冒泡排序是很easy理解和实现,,以从小到大排序举例:设数组长度为N。1.比較相邻的前后二个数据,假设前面数据大于后面的数据,就将二个数据交换。2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。3.N=N-1,假设N不为0就反复前面二步,否则排序完毕...
分类:
编程语言 时间:
2014-10-14 14:48:18
阅读次数:
265
堆排序与高速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先解说下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是全然二叉树或者是近似全然二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)不论什么一个子节点的键值。2.每一个结点的左子树和右...
分类:
编程语言 时间:
2014-10-12 16:32:08
阅读次数:
187
冒泡排序是很easy理解和实现,,以从小到大排序举例:设数组长度为N。1.比較相邻的前后二个数据,假设前面数据大于后面的数据,就将二个数据交换。2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。3.N=N-1,假设N不为0就反复前面二步,否则排序完毕...
分类:
编程语言 时间:
2014-10-10 18:29:34
阅读次数:
172
堆排序与高速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先解说下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是全然二叉树或者是近似全然二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)不论什么一个子节点的键值。2.每一个结点的左子树和右...
分类:
其他好文 时间:
2014-10-10 12:41:54
阅读次数:
168
堆排序与高速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先解说下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是全然二叉树或者是近似全然二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)不论什么一个子节点的键值。2.每一个结点的左子树和右...
分类:
其他好文 时间:
2014-10-07 21:41:04
阅读次数:
184
冒泡排序是很easy理解和实现,,以从小到大排序举例:设数组长度为N。1.比較相邻的前后二个数据,假设前面数据大于后面的数据,就将二个数据交换。2.这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。3.N=N-1,假设N不为0就反复前面二步,否则排序完毕...
分类:
其他好文 时间:
2014-10-02 12:14:22
阅读次数:
137
归并排序是建立在归并操作上的一种有效的排序算法。该算法是採用分治法(Divide and Conquer)的一个很典型的应用。首先考虑下怎样将将二个有序数列合并。这个很easy,仅仅要从比較二个数列的第一个数,谁小就先取谁,取了后就在相应数列中删除这个数。然后再进行比較,假设有数列为空,那直接将还有...
分类:
其他好文 时间:
2014-09-28 13:10:22
阅读次数:
180
堆排序与高速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先解说下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是全然二叉树或者是近似全然二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)不论什么一个子节点的键值。2.每一个结点的左子树和右...
分类:
其他好文 时间:
2014-09-28 12:59:02
阅读次数:
165
一.汉若塔
1、说明:
河内之塔(Towers of Hanoi)是法国人M.Claus(Lucas)于1883年从泰国带至法国的,河内为越战时北越的首都,即现在的胡志明市;1883年法国数学家 Edouard Lucas曾提及这个故事,据说创世纪时Benares有一座波罗教塔,是由三支钻石棒(Pag)所支撑,开始时神在第一根棒上放置64个由上至下依由小至大排列的金盘(Disc),并命令...
分类:
其他好文 时间:
2014-09-19 17:38:15
阅读次数:
147
这个题是最有意思的了,一次性通过,网络流,最大流法,匈牙利法,网上有一篇趣写算法系列--趣写算法系列之--匈牙利算法 这是我见过很有趣的东东了,推荐给大家,/*ID: qq104801LANG: C++TASK: stall4*/#include #include #include #include...
分类:
其他好文 时间:
2014-09-18 00:46:33
阅读次数:
411