栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

为什么选择排序可以稳定或不稳定

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

为什么选择排序可以稳定或不稳定

基本上

selection sort
,在每个“回合”结束时发生的交换可以更改具有相同值的项目的相对顺序。

例如,假设您整理

4 2 3 4 1
selection sort

第一个“回合”将遍历每个元素以寻找最小元素。它会发现1是最小元素。然后它将1交换到第一个位置。这将导致第一个位置的4进入最后一个位置:

1 2 3 4 4

现在4的相对顺序已更改。原始列表中的“第一个” 4已移至其他4个之后的位置。

记住稳定的定义是

保持相同值的元素的相对顺序。

好吧,

selection sort
可以通过 在一组值中找到“最小”值,然后将其与第一个值交换来工作

码:

2,3,1,1#扫描0到n并找到’最小’值

1,3,2,1#用元素0交换’最小’。

1,3,2,1#扫描1到n并找到’最小’值

1,1,2,3#将’least’与元素1交换。

…等等,直到将其排序。

为了使其稳定,而不是交换值,而是插入“最小”值

码:

2,3,1,1#扫描0到n并找到’最小’值

1,2,3,1#在位置0插入’least’,将其他元素推回去。

1,3,2,1#扫描1到n并找到’最小’值

1,1,2,3#在位置1插入“最小”,将其他元素推回去。

…等等,直到将其排序。

修改不稳定的选择排序算法使其变得稳定应该不难。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/383052.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号