常用排序算法

Posted king-penguin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了常用排序算法相关的知识,希望对你有一定的参考价值。

一、简单排序

1.1:直接插入排序:在插入第i个记录时,R1,R2,...Ri-1,Ri已经排好序,这时将关键字ki依次与关键字ki-1, ki-2,...,k1进行比较,从而找到应该插入的位置,然后将ki插入,插入位置及其后面的记录依次向后移。

    简单地理解就是从后找起,找到合适的位置插入,然后不断向后移,依次类推完成所有的排序。这种操作在需要插入元素,和在已完成大部分排序的情况下时间复杂度会比较低。

1.2:冒泡排序:(正序为例子)首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则交换两个记录的值,然后比较第二个记录和第三个记录的关键字,以此类推,直至第n-1个记录和第n个记录的关键字进行比较过为止。这个过程称为一次排序。

    第一次冒泡的结果是将最大的值放到第n个记录位置上,就是将最大的值沉底,然后进行第二次冒泡排序,对前n-1个记录进行同样的操作,其结果是将关键字次大的记录安放在地n-1个记录位置上。当进行完成了n-1次冒泡排序后,所有记录有序排序完成。

  C例子:

                技术图片

1.3:简单选择排序:通过n-i次关键字之间的比较,从n-i+1个记录中选出关键字最小的记录

以上是关于常用排序算法的主要内容,如果未能解决你的问题,请参考以下文章

常用排序算法

常用排序算法之冒泡排序选择排序

Java 常用排序算法/程序员必须掌握的 8大排序算法

Java常用排序算法/程序员必须掌握的8大排序算法

iOS:常用排序算法

常用排序算法总结1一一冒泡排序