数据结构
文章平均质量分 55
骆驼绵羊
不像程序猿的猿
展开
-
数据结构5—图-邻接表 java实现
一、概述邻接表处理方法:用一位数组存储顶点(为何不用单链表存储?数组可以较容易获得读取顶点信息),此外,每个数据元素还存储指向第一个邻接点的指针;每个顶点Vi的所有邻接点构成一个线性表。data:数据域,存储顶点Vi的名或其他信息 firstedge:指针域,指向此顶点的第一个邻接点adjvex:邻接点域,指示与Vi连接的节点在图中的位置 info:存储边或弧的相关信息,如权值,边编号等 ne原创 2016-03-12 18:07:42 · 5526 阅读 · 0 评论 -
数据结构6——图 广度与深度优先搜索
1. 深度优先(DFS)根遍历的推广:假设初始状态是图中中所有顶点未曾被访问,则深搜送图中某个顶点v出发,访问此顶点,然后依次从v的未被访问的邻接点出发深度优先遍历图,直至图中所有和v的路径相通的顶点都被访问到;此时若图中尚有未被访问的点,则另选图中一个未被访问的顶点作为起始点,重复上述过程,直至被访问完为止。 分析:在遍历图中,对图中每个顶点至多调用依次DFS,遍历图是对每个顶点查找其邻接点的过原创 2016-03-15 11:35:59 · 526 阅读 · 0 评论 -
数据结构7—线索二叉树 (java)
二叉链表作为存储结构时只能找到结点的左、右孩子的信息,而不能直接得到结点的任一序列的前驱和后继信息,这种信息只有在遍历的动态过程中才能得到。为保存前驱和后继信息,在每个结点的指针域增加两个区域,分别标识其前驱和后继,并增加两个标志区域。 只有中序遍历才可以对其进行线索化!! 把树的结构遍历的时候看一下哪些地方有空余,会发现中序刚好每个结点间都有结点类public class BiNode<T原创 2016-03-21 10:57:29 · 895 阅读 · 0 评论 -
数据结构4——Java 二叉树 遍历
二叉树这个东西哇看着真是无语…尤其是自学的,..,,.简直想哭啊有木有!!!Java的资料太少,书上都是C或者C++,自己转java,心好累~~二叉树常用构建方式 参考资料大致有两种方式,顺序输入前序遍历方式输入下面上代码:结点类public class BiNode<T> { private T data; private BiNode<T>lChild; pri原创 2016-03-19 22:09:47 · 667 阅读 · 1 评论 -
数据结构2—Java_栈_顺序存储
一、定义接口package Statck;public interface IStatck<T> { /** * 压栈 * @param t */ public void push(T t); /** * 弹栈 */ public T Pop(); /** * 返回元素个数 * @return原创 2016-03-02 16:13:06 · 314 阅读 · 0 评论 -
数据结构3—java 树 双亲表示法
java 双亲表示法实现树原创 2016-03-06 09:53:30 · 1912 阅读 · 0 评论 -
数据结构1——线性表链式存储 java
之前写过一次单链表的实现,但是后续翻看的时候觉得描述的不是很好,网上搜了写资料感觉描述的不是特别好,就去翻了下LinkedList的源码,看了之后觉得天了噜,好神奇~------------------------**程序实现功能**public void add(E data) //添加元素public void add(int index,E element)//在指定的索引处添原创 2016-06-25 09:23:58 · 534 阅读 · 0 评论 -
二叉树相关知识——java
1. 普通二叉树创建 点击查看二叉树创建方式2.二叉排序树(BinarySearchTree)性质:二叉排序树又名二叉查找树、二叉搜索树每个结点都有一个作为搜索依据的关键码(key),所有结点的关键码互不相同。左子树(如果非空)上所有结点的关键码都小于根结点的关键码。右子树(如果非空)上所有结点的关键码都大于根结点的关键码。左子树和右子树也是二叉原创 2016-08-20 16:50:58 · 396 阅读 · 0 评论