- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 图的遍历DFS和BFS代码实现
图的深度优先遍历是树的先序遍历的延伸,先序遍历是DFS的特殊情况。从图中任选一个顶点v,访问后开始随意选一个邻接点,从新的邻接点开始进行DFS,以此类推,这是一个递归的过程,直到遍历完图中所有结点。 实际上,递归算法的本质就是一个栈,递归算法消耗大量的内存存储临时变量和中间状态,但是代码更简单。(至于用不用递归,就看实际需求吧) 图的非递归深度优先遍历,引入一个数组和一个栈,数组visit[]...
2019-12-25 20:56:23 2394
原创 图的几种表示方法
图数据结构的表示方法大致分为四种,邻接矩阵、邻接表、十字链表、多重邻接表。 邻接矩阵是最容易理解的表示方法,优点是简单易懂,缺点是可能会占用很多存储空间,且没有任何意义,空间复杂度有向图是n^2,无向图是n(n-1)/2,因为无向图矩阵是对称的,只需要存储一半且不包含对角线即可。邻接矩阵的存储优化可以通过矩阵优化来实现(具体可以看矩阵的压缩方法)。 邻接表就是更加灵活,节省存储空间空间复杂度有...
2019-12-25 13:33:58 5191
原创 树的表示方法以及先、中、后序遍历以及求叶子结点个数和树的深度代码C代码
树的概念及性质 暂时略 树的表示方法 图形表示法:直观清晰易于理解。 广义表表示法:不常用。 左孩子右兄弟表示法:可以将多叉树转化为二叉树的一种表示方法,而二叉树更适合计算机表示。(也就是说一般遇到多叉树,转化成二叉树) 二叉树及性质 略 二叉树的存储结构 顺序存储 用一个数组来存储二叉树,结合二叉树的性质,可以保存树的结点之间的关系。最适合完全二叉树和满二叉树,如果是一般二叉...
2019-12-17 10:16:39 2462 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人