- 博客(3)
- 收藏
- 关注
原创 QuickSort快速排序
基本思想: 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。 代码: package Sort; public class QuickSort { /** * 递归 * @param a
2013-12-10 14:49:09
454
原创 Dijkstra最短路径算法
引入: Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径。主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止。Dijkstra算法能得出最短路径的最优解,但由于它遍历计算的节点很多,所以效率低。 代码: package Dijkstra; public class Node { private char id; pr
2013-12-10 13:25:19
635
原创 最长上升子序列(Longest Increasing Subsequence)
问题: 给出一个序列a1,a2,a3,a4,a5,a6,a7….an,求它的一个子序列(设为s1,s2,…sn),使得这个子序列满足这样的性质,s1 例如有一个序列:1 7 3 5 9 4 8,它的最长上升子序列就是 1 3 4 8 长度为4. 分析: 对于几个给定的数字 a1、a2、... an, 对于从最左边的某一个数开始,按照严格单调递增的顺序到达数ai的路径,将它成为“到
2013-12-03 15:30:51
924
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人