排序算法(未写完,等待)

1.选择排序(每次选择最小的放在最前面)

选择排序的基本思想: 

每一趟在n-i+1(i=1,2,3…,n-1)个记录中选取关键字最小的记录与第i个记录交换,并作为有序序列中的第i个记录

选择排序的时间复杂度为:O(n^2),空间复杂度:O(1)    选择排序是不稳定的;

eg:

待排序列: 43,65,4,23,6,98,2,65,7,79

第一趟: 2,65,4,23,6,98,43,65,7,79

第二趟: 2,4,65,23,6,98,43,65,7,79

第三趟: 2,4,6,23,65,98,43,65,7,79

第四趟: 2,4,6,7,43,65,98,65,23,79

第五趟: 2,4,6,7,23,65,98,65,43,79

第六趟: 2,4,6,7,23,43,98,65,65,79

第七趟: 2,4,6,7,23,43,65,98,65,79

第八趟: 2,4,6,7,23,43,65,65,98,79

第九趟: 2,4,6,7,23,43,65,65,79,98

2.冒泡排序(一二比较,二三比较,。。。)

冒泡排序的基本思想为:

一趟冒泡排序的过程为:首先将第一个记录的关键字和第二个记录的关键字进行比较,若为逆序,则将两个记录交换之,然后比较第二个记录的关键字和第三个记录的关键字,依次类推,直至第n-1个记录和第n个记录的关键字进行过比较为止;

在冒泡排序的过程中,关键字较小的记录好比水中气泡逐趟向上漂浮,而关键字较大的记录好比石头往下沉,每一趟有一块“最大”的石头沉到水底。

冒泡排序的时间复杂度为:O(n^2),空间复杂度为O(1) 冒泡排序是稳定的;

例如:

待排序列:43, 65, 4, 23, 6, 98, 2, 65, 7, 79

第一趟: 43, 4,23,6,65,2,65,7,79,98

第二趟: 4,23,6,43,2,65,7,65,79,98

第三趟: 4,6,23,2,43,7,65,65,79,98

第四趟: 4,6,2,23,7,43,65,65,79,98

第五趟: 4,2,6,7,23,43,65,65,79,98

第六趟: 2,4,6,7,23,43,65,65,79,98

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、 单项选择题(共71题) 对n个元素的序列进行冒泡排序时,最少的比较次数是( )。A. n ...
    貝影阅读 9,259评论 0 10
  • 那年, 青春年少, 下了晚自习, 我们在宿舍楼下的操场上初见, 抬头瞥见一个眉目清秀, 长得帅帅的大男孩, 校园生...
    静秋mt阅读 154评论 0 1
  • 情人节前一天,耿温馨看着手机里的信息,张少发来的,我们分手吧! 大一开学没多久,还是在春天,班上转来了一位新同学,...
  • #父母的高度是孩子的起点# 🎯孩子第二个30天目标:早睡早起(21:30/07:30) 7:15/22:15 7:...
    DavidHumanPower阅读 279评论 0 1
  • 从某月一号开始,全世界的女生来大姨妈的时间由她的生日决定,规则如下:例如8.20生日,那么她来例假的时间就是从某月...
    Poly姬阅读 173评论 0 0