码迷,mamicode.com
首页 > 编程语言 > 详细

第七章节 排序

时间:2015-05-24 14:06:30      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:

我们先假设排序工作是在内存中完成的,也就是说数据量小于几百万,这称为内部排序。最后再考虑大量数据时的排序,也就是外部排序。

对内部排序的研究将得出结论:

  • 存在几种容易 的算法 以O(N2)完成排序,如插入排序。
  • shell排序很简单,以o(N2)(这里是小o)完成排序,在实践中很有效果。
  • 有一些复杂的以O(NlogN)完成排序。
  • 任何通用的排序算法均要Ω(NlogN)次比较。

一、插入排序 

由N-1次排序组成,利用了这样的一个事实:已经位置0到 p-1上的元素已经处理排序的状态。在第p次比较时,我们将位置p上的元素向左移动,直到它在前p+1个元素中找到正确 的位置。位置p上元素保存于

tmp,而前面 的更大的元素向右移动 一个位置。与二叉堆实现时用了相同的技巧。

 

第七章节 排序

标签:

原文地址:http://www.cnblogs.com/chuiyuan/p/4525665.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!