稳定排序的概念

什么是稳定排序?


假设我们有如下序列: 5 1 , 1 , 3 , 5 2 {5_1, 1, 3, 5_2} 51,1,3,52,其中有两个相同的 5 5 5;稳定排序与不稳定排序分别如下:

  1. 稳定排序: 1 , 3 , 5 1 , 5 2 {1, 3, 5_1, 5_2} 1,3,51,52;两个 5 5 5 的顺序没有变;
  2. 不稳定排序: 1 , 3 , 5 2 , 5 1 {1, 3, 5_2, 5_1} 1,3,52,51;两个 5 5 5 的顺序发送了变化;

稳定排序的意义:


假设期末的考试的时候,计算机一班的 C 同学,二班的 B 同学,三班的 A 同学,《程序设计课程》都是 90 90 90 分,录入成绩的时候是按照班次分别录入的 9 0 C , 9 0 B , 9 0 A {90_C, 90_B, 90_A} 90C,90B,90A,年纪还有一个 100 100 100 分和 95 95 95分的。最终排名优先按分数,其次按姓氏字母顺序排列,最终的单科排名就成为为: 100 , 95 , 9 0 A , 9 0 B , 9 0 C {100, 95, 90_A, 90_B, 90_C} 100,95,90A,90B,90C

  1. 原数据: 9 0 C , 9 0 B , 9 0 A , 100 , 95 {90_C, 90_B, 90_A, 100, 95} 90C,90B,90A,100,95
  2. 稳定排序: 100 , 95 , 9 0 C , 9 0 B , 9 0 A {100, 95, 90_C, 90_B, 90_A} 100,95,90C,90B,90A
  3. 不稳定排序: 100 , 95 , 9 0 A , 9 0 B , 9 0 C {100, 95, 90_A, 90_B, 90_C} 100,95,90A,90B,90C

假设前三名有奖金,稳定排序和不稳定排序获奖人是不一样的。


哪些些排序方法一定是稳定排序


一定是稳定排序的算法有:计数排序。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值