随笔分类 -  数据结构

数据结构的概念,算法习题的实现代码等
数据结构——java语言描述图的定义和使用
摘要:一、图的种类和定义 图由顶点集和边集组成。 主要有4种类型:无向图、有向图、无向网和有向网、 常见的存储结构有邻接矩阵、邻接表、邻接多重表、十字链表等。 二、图的表示方法 2.1图的邻接矩阵表示方法: 阅读全文

posted @ 2016-06-29 20:54 XLeer 阅读(508) 评论(0) 推荐(0)

数据结构(java语言描述)哈夫曼编码
摘要:原理:哈夫曼编码是根据将已给出的权值作为叶子结点,生成一颗哈夫曼树,然后使得权重最小。 首先生成已给权重的所有的叶子结点,然后取所有节点中最小和次小的结点作为左右孩子生成一个哈夫曼树,计算出父节点的权重放入给出的权重森林中,并把之前的最小和次小的结点从森林中删除,再在种种森林中找最小和次小的结点生成 阅读全文

posted @ 2016-04-13 10:49 XLeer 阅读(2668) 评论(0) 推荐(0)

数据结构(java语言描述)树(二叉树)的构建和遍历操作
摘要:二叉树:度为二的,分左右孩子的树。 树结点的结构: package tree;public class BitreeNode {private Object data;//树结点的数据private BitreeNode lchild,rchild;//树结点的左右孩子结点public Bitree 阅读全文

posted @ 2016-04-11 16:23 XLeer 阅读(736) 评论(0) 推荐(0)

数据结构(java语言描述)串与数组——稀疏矩阵的三元组表存储
摘要:知识点补充: 稀疏矩阵:是具有较多零元素且非零元素的分布无规律的矩阵。(一般矩阵是用多(二)维数组存储)。 但是,稀疏矩阵的存储比较浪费存储空间,因此为了节省存储空间可以用一个三元组表来存储稀疏矩阵。 三元组表:三元组表中的任意一个三元组元素存储了稀疏矩阵中的非零元素、所在行和所在列。 稀疏矩阵转三 阅读全文

posted @ 2016-03-31 16:52 XLeer 阅读(6170) 评论(0) 推荐(1)

数据结构(java语言描述)串与数组——文件加解密
摘要:对文本文件加解密的方法很多,一种简单的加解密方法就是通过异或操作。即对明文a,进行a^k=b.b为得到的密文,当再次对b做b^k=a',此时a'=a;即解密。 补充知识点: 1.java中可以把字符a通过类型强制转换的形式转换a的unicode码或者是ascii码。 即:char a='c'; in 阅读全文

posted @ 2016-03-30 16:18 XLeer 阅读(642) 评论(0) 推荐(1)

数据结构(java语言描述)——串数组(n阶魔方)
摘要:n阶魔方的思想: 定义一个n*n阶数组,组委n阶魔方的数据结构,将1--n*n的数字填入其中: 1:首先填写第一行,中间列的位置为1; 2:下一个数填写在当前位置的上一行,下一列;若果存在一下情况则改正: 1,当前行为第一行,则则下一个数由上一行改为最后一行,列仍为下一列; 2,当前列为最后一列,则 阅读全文

posted @ 2016-03-29 21:45 XLeer 阅读(536) 评论(1) 推荐(0)

数据结构(java语言描述)模式匹配——KMP算法
摘要:关于模式匹配算法,BF是比较号理解的,但是属于暴力匹配,资源浪费太严重。 KMP算法确实比较难懂(PS:反正我是看了好久才弄明白,可能也是我理解能力太差=_=) 下面是我的一些心得。 http://www.cnblogs.com/yjiyjige/p/3263858.html 这个是我在网上找到的一 阅读全文

posted @ 2016-03-25 21:37 XLeer 阅读(542) 评论(0) 推荐(0)

数据结构(java语言描述)模式匹配——Brute-Force(BF)算法
摘要:1.功能 分别存在P和S两个串,其中P是主串,S是子串。在P中寻找S出现的位置,并返回。若不存在则返回-1. 2.思路 最原始的思想是,用P的第一个字符(i=0)和S的第一个字符(j=0)作比较,若相等则i++,j++; 若不想等则,i++,(i返回到原位置+1),j=0(j返回到0); 3.代码 阅读全文

posted @ 2016-03-25 16:37 XLeer 阅读(796) 评论(0) 推荐(0)

数据结构(java语言描述)栈(队列)习题
摘要:package exercise;import stack.sqstack;import java.util.Scanner;public class nizhi {public int[] shunizhi(int[] x)throws Exception{ if(x!=null){ sqstac 阅读全文

posted @ 2016-03-21 22:01 XLeer 阅读(1341) 评论(0) 推荐(0)

数据结构(java语言描述)递归实现——汉诺塔问题
摘要:N阶汉诺塔:假设有3个分别命名为x,y,z的三个塔座,在x上有n个盘子,直径大小不同,有小到大按标号1,2,3...n排列,要借助y将n个盘子转移到z上,期间不能让小盘子压在大盘子上。规则: 当n=1时,直接把盘子由x——>z; 当n>1时,需利用y,首先将(n-1)个盘子由x——>y,把第n个实现 阅读全文

posted @ 2016-03-21 17:07 XLeer 阅读(461) 评论(0) 推荐(0)

数据结构(java语言描述)链栈的使用——表达式求值
摘要:表达式中的优先级为: _______________________________________ — () — +- — */% — ^ —— ————————————————————————— — 0 — 1 — 2 — 3 — ________________________________ 阅读全文

posted @ 2016-03-21 15:39 XLeer 阅读(947) 评论(0) 推荐(0)

数据结构(java语言描述)链栈的定义
摘要:package stack;public interface Istack { public void clear(); public boolean isEmpty(); public int length(); public Object peek(); public void push(Obj 阅读全文

posted @ 2016-03-18 21:47 XLeer 阅读(874) 评论(0) 推荐(0)

数据结构(java语言描述)顺序栈的使用(两个大数相加)
摘要:利用http://www.cnblogs.com/xleer/p/5289661.html中对顺序栈以及栈的进本方法的定义,实现超过整数上限的两个数的加法计算。 算法: package stack;/************************************************** 阅读全文

posted @ 2016-03-18 20:20 XLeer 阅读(550) 评论(0) 推荐(0)

数据结构(java语言描述)顺序栈的使用
摘要:1.声明Istack接口; package stack;public interface Istack { public void clear(); public boolean isEmpty(); public int length(); public Object peek(); public 阅读全文

posted @ 2016-03-17 22:00 XLeer 阅读(1099) 评论(0) 推荐(0)

数据结构(java语言描述)顺序表的使用
摘要:package class1; public interface LinearList { //判断线性表是否为空 public boolean isEmpty(); //返回线性表的长度 public int length(); //判断线性表是否已满 public boolean isFull( 阅读全文

posted @ 2016-03-17 17:20 XLeer 阅读(393) 评论(0) 推荐(0)

数据结构(java语言描述)链表的使用
摘要:package class2;public class Node {private Object data;private Node next;//无参构造函数 public Node(){ // this(null,null); this.data=null; this.next=null; }  阅读全文

posted @ 2016-03-17 17:12 XLeer 阅读(357) 评论(0) 推荐(0)

导航