LaneBlog

蝼蚁虽小,也有梦想

PHP Socket服务 | PHP微信开发框架 | 开源博客

算法十三:树的应用之堆 - 从小到大和从大到小排列的问题

Date: 2015-01-08 23:23:50 Power By 李轩Lane

Tag: 算法 |

堆是一种特殊的完全二叉树,是树的一种常见的应用,最简单的便是解决将无序的数列从大到小排列或者从小到大排列。性能极佳。

算法十二:Bellman-Ford算法 - 一个点到其他所有点的最短路径(可负边)

Date: 2015-01-08 21:49:58 Power By 李轩Lane

Tag: 算法 | Bellman-Ford算法

什么是Bellman-Ford算法?Bellman-Ford算法是一种堪称完美的解决一个点到其他各点的最短路径的算法。Bellman-Ford算法的核心代码只有4行,可以解决负权边的问题。

算法十一:Dijkstra算法 - 一个点到各个点的最短路径

Date: 2014-12-23 22:49:28 Power By 李轩Lane

Tag: 算法 | Dijkstra算法

什么是Dijkstra算法?Dijkstra算法是指定一个源点,求得这个源点到各个点的最短路径。Dijkstra算法通过不断的松弛边,每次更新相邻点的路径,使之两点之间的距离成为最短的路径。Dijkstra算法缺点是不能有负权边的值。

算法十:多源最短路径(任意两点最短路径)之Floyd-Warshall算法

Date: 2014-11-19 11:31:46 Power By 李轩Lane

Tag: 算法 | 多源最短路径

任意两点最短路径被称为多源最短路径,即给定任意两个点,一个出发点,一个到达点,求这两个点的之间的最短路径,就是任意两点最短路径问题,多源最短路径,而Floyd-Warshall算法最简单,只有5行代码,即可解决这个问题。

算法九:深度优先搜索和广度优先搜索来遍历图

Date: 2014-11-14 18:25:34 Power By 李轩Lane

Tag: 算法 | 图的遍历

图的遍历,我们用深度优先搜索遍历图和广度优先搜索遍历图。最简单的一种图的遍历-穷举!

算法八:炸弹人游戏之深度优先搜索

Date: 2014-11-13 21:40:04 Power By 李轩Lane

Tag: 算法 | 深度优先搜索

深度优先搜索,我们本篇讲用深度优先搜索来解决上一篇的炸弹人游戏,领略深度优先搜索和广度优先搜索的不同。

算法七:广度优先搜索

Date: 2014-11-11 21:56:38 Power By 李轩Lane

Tag: 算法 | 广度优先排序

什么是广度优先搜索?广度优先搜索也称为宽度优先搜索,一层一层不断的扩展来达到搜索的目的。以一个点为中心,将上下左右4个点都搜索过后,再以这4个点分别为中心点,搜索该中心点的上下左右4个点,依次类推。

算法六:深度优先搜索

Date: 2014-11-09 23:19:54 Power By 李轩Lane

Tag: 算法 | 深度优先搜索

什么是深度优先搜索?理解深度优先搜索的关键在于解决“当前如何做”,至于“下一步如何做”和“当前如何做是一样的做法”。深度优先搜索是Depth First Search, DFS。

算法五:栈

Date: 2014-11-04 22:42:20 Power By 李轩Lane

Tag:

什么是栈?先进后出/后进先出为栈。与队列相反。就是先来的要排到最后,后来的却可以先走。栈最早是由图灵奖命名来源者图灵发明,最初为解决程序的调用和返回。而栈的应用之一就是递归。

算法四:队列

Date: 2014-11-04 22:34:22 Power By 李轩Lane

Tag:

什么是队列?队列就是先进先出,也就是现实生活中我们的排队,先来的先走,后来的后走,一个接一个,这就是队列。队列优点很明显,按照顺序谁也不抢。缺点也很明显,如果排头的走了,那么第二个要排头,第三个要到第二个,每个都要前进一步,对计算机来讲这就是资源的损耗。

©2014 www.lanecn.com , All rights reserved. Power By Li Xuan.  京ICP备14005030号