Description定义一个二维数组:int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 0,};它表示一个迷宫,其中的1表示墙壁,0表示可以走的路,只能横着走或竖着走...
分类:
其他好文 时间:
2014-07-22 22:53:33
阅读次数:
275
街区最短路径问题时间限制:3000ms | 内存限制:65535KB难度:4描述一个街区有很多住户,街区的街道只能为东西、南北两种方向。住户只可以沿着街道行走。各个街道之间的间隔相等。用(x,y)来表示住户坐在的街区。例如(4,20),表示用户在东西方向第4个街道,南北方向第20个街道。现在要建一个...
分类:
其他好文 时间:
2014-07-19 23:33:06
阅读次数:
215
广度优先搜索(BFS)算法
宽度优先搜索算法(又称广度优先搜索)是最简便的图的搜索算法之一,这一算法也是很多重要的图的算法的原型。Dijkstra单源最短路径算法和Prim最小生成树算法都采用了和宽度优先搜索类似的思想。
已知图G=(V,E)和一个源顶点s,宽度优先搜索以一种系统的方式探寻G的边,从而“发现”s所能到达的所有顶点,并计算s到所有这些顶点的距离(最少边数),该算法同时能生...
分类:
其他好文 时间:
2014-07-19 11:32:04
阅读次数:
535
迪杰斯特拉(Dijkstra)算法是典型最短路径算法,用于计算一个节点到其他节点的最短路径。
它的主要特点是以起始点为中心向外层层扩展(广度优先搜索思想),直到扩展到终点为止。
基本思想
通过Dijkstra计算图G中的最短路径时,需要指定起点s(即从顶点s开始计算)。
此外,引进两个集合S和U。S的作用是记录已求出最短路径的顶点(以及相应的最短路径长...
分类:
其他好文 时间:
2014-07-18 22:17:53
阅读次数:
225
次小生成树。求出两点间最短路径的最大权值,再把要加入的边与之比较即可。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 const int MAXN=1010; 8 const int MAXM=...
分类:
其他好文 时间:
2014-07-18 13:38:30
阅读次数:
292
A Walk Through the ForestTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5421Accepted Submission(s...
分类:
其他好文 时间:
2014-07-17 23:33:30
阅读次数:
518
dijkstra算法floyd算法最小生成树将所有的分成两个集合,一个是已经按照最小值排完顺序的,另外一个是没有排完顺序的,每次在查找从排完顺序的集合到未排完顺序的集合的最短路径,然后将未排完顺序的集合里面的值加入到已排完顺序的集合里。最小生成树算法:例题,第一行输入N和M,代表点的个数和他们之间存...
分类:
其他好文 时间:
2014-07-17 23:20:31
阅读次数:
335
Dijkstra最短路径算法:dijkstra 算法的优点在于可以求出从一点到所有其他点的最短距离;input:5 71 2 101 3 201 5 302 5 102 3 54 5 204 3 30output:0 10 15 40 20//这是求的在这颗树中,1到所有点的最短距离 1 #incl...
分类:
其他好文 时间:
2014-07-17 22:11:18
阅读次数:
414
迷宫的最短路径 代码(C++)本文地址: http://blog.csdn.net/caroline_wendy题目: 给定一个大小为N*M的迷宫. 迷宫由通道和墙壁组成, 每一步可以向邻接的上下左右四格的通道移动.请求出从起点到终点所需的最小步数. 请注意, 本题假定从起点一定可以移动到终点.使用宽度优先搜索算法(DFS), 依次遍历迷宫的四个方向, 当有可以走且未走过的方向时, 移动并且步数加...
分类:
编程语言 时间:
2014-07-17 21:02:38
阅读次数:
323
EK算法:是一种最短路径增值的算法,通过不断从源点广搜寻找最短路径,然后记录路径中的最小容量,再给这条路径上的边上flow增值,(增值之后当然会有一部分边是满流的,那么再次广搜的时候当然也就不能正向搜索到此边了,这条路径上的边的流量都增大了,容量不变,可增值量当然也就会减少),直到从源点广搜不到汇点为止,来实现最大流。由于每次都要广搜所以时间复杂度会达到O(m*m+n),m为边的个数,n为点的个数。...
分类:
其他好文 时间:
2014-07-17 19:20:25
阅读次数:
236