
排序
霍师傅hgd613
心所向,皆可成
展开
-
简单的选择排序
一趟简单选择排序的操作为:通过n-i次关键字的比较,从n-i+1个记录中选出关键字最小(大)记录,并和第i个记录交换之;所需进行记录移动的次数最小值为0,最大值为3(n-1),关键字之间的比较次数是n(n-1)/2,所以时间复杂度为O(n*n); 如下的例子所示: #include using namespace std; #define size 10 void select原创 2012-10-01 08:59:50 · 625 阅读 · 0 评论 -
快速排序java版
public class MainTest { final static int length = 10; // 数组长度 static int[] nums = new int[length]; public static void main(String[] args) { // 生成随机数 Random random = new Random(); for (int i原创 2016-01-19 23:05:51 · 518 阅读 · 0 评论 -
排序算法---之二叉树堆排序
堆是完全二叉树的结构,并且,节点都比子节点上的值大或者小。这就是对,由此可见,依次输出堆的最顶端元素,就能得到一个有序的序列,那么关键的问题就是如何把一个无序的序列建成一个堆?输出堆最顶端元素后,如何把剩下的元素建成一个堆? 下面看看实现过程:原创 2016-01-21 11:18:40 · 642 阅读 · 0 评论