摘要: 图最短路径算法(Graph Shortest Path Algorithm, eg: Floyd-Warshall, Dijkstra, Bellman-Ford, SPFA, Kruskal, Prim, Johnson)最短路径问题有多个衍生问题(并且每个衍生问题都涉及是否有负权边)单源点最短路... 阅读全文
posted @ 2014-05-28 10:23 Leo C. 阅读(1209) 评论(0) 推荐(0) 编辑
摘要: A*搜索算法(A Star Search Algorithm)A*算法主要用于在二维平面上寻找两个点之间的最短路径。在从起始点到目标点的过程中有很多个状态空间,DFS和BFS没有任何启发策略所以穷举所有的状 态空间,不适合仅需对局部进行搜索的应用。启发式搜索的关键在于:当前节点在选择下一步节点的时候... 阅读全文
posted @ 2014-05-28 09:56 Leo C. 阅读(2249) 评论(0) 推荐(0) 编辑
摘要: B树(B-Tree)1970年由R. Bayer和E. Mccreight提出的一种适用于外查找的树,一种由BST推广到多叉查找的平衡查找树,由于磁盘的操作速度远小于存储器的读写速度,所以要求在尽量少 的操作次数内完成CPU分配的任务,B树就按照此原则设计,B树与红黑树的主要区别在于B树节点可以有超... 阅读全文
posted @ 2014-05-28 09:50 Leo C. 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 二叉堆(Binary Heap)二叉堆是完全二叉树(或者近似完全二叉树);其满足堆的特性:父节点的值>=(<=)任何一个子节点的键值,并且每个左子树或者右子树都是一 个二叉堆(最小堆或者最大堆);一般使用数组构建二叉堆,对于array[i]而言,其左子节点为array[2*i],其右子节点为 arr... 阅读全文
posted @ 2014-05-28 09:28 Leo C. 阅读(1611) 评论(0) 推荐(0) 编辑