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

常用排序算法

时间:2020-06-30 22:09:38      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:完成   插入排序   插入   理解   mamicode   简单选择   nbsp   应该   png   

一、简单排序

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个记录中选出关键字最小的记录

常用排序算法

标签:完成   插入排序   插入   理解   mamicode   简单选择   nbsp   应该   png   

原文地址:https://www.cnblogs.com/King-Penguin/p/13216339.html

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