2013年2月26日
摘要: 1.概述原理:两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止,时间复杂度为O(n2)。就好像是水里的东西,重量轻的会浮在上面,重点的是下面一层,最重的在最下层。2.示例 //冒泡排序 public static void BubbleSort(int[] nums) { int temp; for (int i = 0; i < nums.Length - 1; i++) { for (int j = nums.Length - 1; j ... 阅读全文
posted @ 2013-02-26 11:22 Qlin 阅读(440) 评论(0) 推荐(0) 编辑
摘要: 1.概述希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。原理:先将序列分割成若干个子序列(由相隔某个“增量”的 元素组成的)分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。插入排序在元素基本有序的情况下,效率会更高,因此先分组,再插入排序,再组装,已达到序列基本有序,所以希尔排序在时间效率上比插入排序有较大提高,时间复杂度为O(n3/2)。2.示例 //希尔排序 public static void ShellSort(int[] num... 阅读全文
posted @ 2013-02-26 10:36 Qlin 阅读(475) 评论(0) 推荐(0) 编辑