上一页 1 ··· 33 34 35 36 37 38 39 40 41 ··· 98 下一页
摘要: 4.2 给定有向图,设计一个算法,找出两个结点之间是否存在一条路径。解答根据题意,给定一个有向图和起点终点,判断从起点开始,是否存在一条路径可以到达终点。 考查的就是图的遍历,从起点开始遍历该图,如果能访问到终点, 则说明起点与终点间存在路径。稍微修改一下遍历算法即可。使用广度优先遍历实现代码:#i... 阅读全文
posted @ 2014-12-06 09:50 Jessica程序猿 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 4.1 实现一个函数,检查二叉树是否平衡。在这个问题中,平衡树的定义如下:任意一个结点,其两颗子树的高度差不超过1.C++实现代码:#include#include#includeusing namespace std;//Definition for binary treestruct TreeN... 阅读全文
posted @ 2014-12-05 21:30 Jessica程序猿 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。它的主要特点是以起始点为中心向外层层扩展(广度优先搜索思想),直到扩展到终点为止。基本思想 通过Dijkstra计算图G中的最短路径时,需要指定起点s(即从顶点s开始计算)。 此外,引进两个集合S和U。S的作... 阅读全文
posted @ 2014-12-05 20:57 Jessica程序猿 阅读(3866) 评论(5) 推荐(2) 编辑
摘要: 普里姆(Prim)算法,和克鲁斯卡尔算法一样,是用来求加权连通图的最小生成树的算法。 基本思想 对于图G而言,V是所有顶点的集合;现在,设置两个新的集合U和T,其中U用于存放G的最小生成树中的顶点,T存放G的最小生成树中的边。 从所有uЄU,vЄ(V-U) (V-U表示出去U的所有顶点)的边中选取权 阅读全文
posted @ 2014-12-05 20:08 Jessica程序猿 阅读(16878) 评论(2) 推荐(0) 编辑
摘要: 最小生成树在含有n个顶点的连通图中选择n-1条边,构成一棵极小连通子图,并使该连通子图中n-1条边上权值之和达到最小,则称其为连通网的最小生成树。例如,对于如上图G4所示的连通网可以有多棵权值总和不相同的生成树。克鲁斯卡尔算法介绍克鲁斯卡尔(Kruskal)算法,是用来求加权连通图的最小生成树的算法... 阅读全文
posted @ 2014-12-05 19:22 Jessica程序猿 阅读(5687) 评论(0) 推荐(1) 编辑
摘要: 拓扑排序介绍拓扑排序(Topological Order)是指,将一个有向无环图(Directed Acyclic Graph简称DAG)进行排序进而得到一个有序的线性序列。这样说,可能理解起来比较抽象。下面通过简单的例子进行说明!例如,一个项目包括A、B、C、D四个子部分来完成,并且A依赖于B和D... 阅读全文
posted @ 2014-12-05 13:20 Jessica程序猿 阅读(693) 评论(0) 推荐(1) 编辑
摘要: 1. 广度优先搜索介绍广度优先搜索算法(Breadth First Search),又称为"宽度优先搜索"或"横向优先搜索",简称BFS。它的思想是:从图中某顶点v出发,在访问了v之后依次访问v的各个未曾访问过的邻接点,然后分别从这些邻接点出发依次访问它们的邻接点,并使得“先被访问的顶点的邻接点先于... 阅读全文
posted @ 2014-12-05 11:46 Jessica程序猿 阅读(2769) 评论(0) 推荐(0) 编辑
摘要: 1. 深度优先搜索介绍图的深度优先搜索(Depth First Search),和树的先序遍历比较类似。它的思想:假设初始状态是图中所有顶点均未被访问,则从某个顶点v出发,首先访问该顶点,然后依次从它的各个未被访问的邻接点出发深度优先搜索遍历图,直至图中所有和v有路径相通的顶点都被访问到。 若此时尚... 阅读全文
posted @ 2014-12-05 11:20 Jessica程序猿 阅读(2757) 评论(1) 推荐(0) 编辑
摘要: 邻接表有向图是指通过邻接表表示的有向图。上面的图G2包含了"A,B,C,D,E,F,G"共7个顶点,而且包含了",,,,,,,,"共9条边。上图右边的矩阵是G2在内存中的邻接表示意图。每一个顶点都包含一条链表,该链表记录了"该顶点所对应的出边的另一个顶点的序号"。例如,第1个顶点(顶点B)包含的链表... 阅读全文
posted @ 2014-12-05 10:40 Jessica程序猿 阅读(2761) 评论(0) 推荐(0) 编辑
摘要: 邻接矩阵有向图的介绍邻接矩阵有向图是指通过邻接矩阵表示的有向图。上面的图G2包含了"A,B,C,D,E,F,G"共7个顶点,而且包含了",,,,,,,,"共9条边。上图右边的矩阵是G2在内存中的邻接矩阵示意图。A[i][j]=1表示第i个顶点到第j个顶点是一条边,A[i][j]=0则表示不是一条边;... 阅读全文
posted @ 2014-12-05 10:13 Jessica程序猿 阅读(3334) 评论(0) 推荐(0) 编辑
上一页 1 ··· 33 34 35 36 37 38 39 40 41 ··· 98 下一页