您的位置:首页 > 其它

总结近期所学的几种排序方法的基本思想

2015-06-17 12:56 330 查看
最近学习了几种排序方法,现在总结一下这些排序方法的基本思想。

1.直接插入排序

假设i-1个元素已经有序,将第i个元素的关键字与前i-1个元素的关键字进行比较,找到合适的位置,将第i个元素插入。按照类似的方法,将剩下的元素依次插入到已经有序的序列中,完成插入排序。

2.折半插入排序

由于插入排序算法的基本思想是将待排序元素插入到已经有序的元素序列的正确位置,因此,在查找插入位置时,可以采用折半查找的算法思想寻找插入位置。

3.2-路插入排序

2-路插入排序是在折半插入排序的基础上再改进的,目的是减少排序过程中移动记录的次数,但为此需要n个记录的辅助空间。

4.希尔排序

通过将待排序的元素分为若干个子序列,利用直接插入排序思想对子序列进行排序。然后将该子序列缩小,接着对子序列进行直接插入排序。按照这种思想,直到所有元素都按照关键字有序排列。

5.简单选择排序

假设待排序的元素序列有n个,第一趟排序经过n-1次比较,从n个元素序列中选择关键字最小的元素,并将其放在元素序列的最前面,即第一个位置。第二趟排序从剩余的n-1个元素中,经过n-2次比较,选择关键字最小的元素,将其放在第二个位置。依次类推,直到没有待比较的元素,简单选择排序算法结束。

6.冒泡排序和快速排序的主要区别:冒泡排序通过比较两个相邻的元素,如果存在逆序,则进行交换;而快速排序是选定一个枢轴元素作为参考点,通过依次将元素序列中的关键字与枢轴元素的关键字进行比较,如果逆序,则进行交换,从而实现排序。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: