随笔分类 -  数据结构

摘要:图的邻接表表示及其BFS遍历 有下面这张图: 假设该图为有向图,边的指向均为小序号指向大序号。那么对该图的BFS遍历如下(假设从序号0的节点开始遍历): 遍历结果应为: BFS遍历类似于树的层序遍历,需要用到队列。下面是程序代码: 1.队列定义和相关操作 文件1 queue.h 文件2 queue. 阅读全文
posted @ 2016-08-09 14:13 zkang 阅读(3816) 评论(0) 推荐(0) 编辑
摘要:图的邻接表表示及其遍历 1.图的结构定义 2.图的建立 3.图的DFS遍历 假设有下面这张图,这个图包含两个连通图。 输入如下: 程序运行结果: 证明程序是正确的。 完整程序代码参见: https://github.com/zkangHUST/DataStructure 阅读全文
posted @ 2016-08-08 17:36 zkang 阅读(8595) 评论(0) 推荐(1) 编辑
摘要:1.基本思路 层序遍历的基本思路就是, 1.根节点入队列。 2.根节点出队,同时将根节点左儿子和右儿子入队 3.结点出队,同时将该节点的左儿子和右儿子入队 4.重复3直到队列为空 2.算法实现 void layerprint(struct TreeNode r) { struct queue q1; 阅读全文
posted @ 2016-06-27 19:22 zkang 阅读(2139) 评论(0) 推荐(0) 编辑
摘要:二叉树总结 1. 二叉树的重要性质 一个二叉树的第i层最多有2i−1个结点(i>=1) 深度为k的二叉树最多有2k−1个结点(k>=1) 对于任何非空二叉树有n0个叶结点,n2个度为2的结点,那么总有关系: n0=n2+1 2.对二叉树的操作 Boolean IsEmpty(BinTree BT); 阅读全文
posted @ 2016-03-24 22:28 zkang 阅读(159) 评论(0) 推荐(0) 编辑
摘要:二分法 例:假设有一个容量为n+1开始的数组,从小到大存储了n个数(从下标1开始存储)。给定给定数m,求出数组中值为m的元素的下标,如果未找到则返回0。 分析: 以11个数进行分析。 首先令左边界为left=1,右边界为right=11,mid=(left+right)/2 即为6,判断m跟num[ 阅读全文
posted @ 2016-03-24 17:27 zkang 阅读(323) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示