这是哪种排序算法?

3
我需要知道哪个排序算法可以实现这种排序方式:
[4 1 7 6 3 11]

[4 1 7 3 6 11]

[4 1 3 7 6 11]

[1 4 3 7 6 11]

[1 4 3 6 7 11]

[1 3 4 6 7 11]

明天就要考试了,我很困惑。 它应该是一个简单的算法,但不能是插入排序/选择排序,我甚至看了堆排序(绝对)和归并排序-最后一个选项。
我想说它是归并排序,但加上附加条件后是否容易我不确定。 或者我严重误解了算法。:(
谢谢你的阅读,至少!:)

5
这看起来很像冒泡排序,但我不太明白为什么它要从中间开始。 - Boris the Spider
6
看起来像是一个反向的冒泡排序。 - Guffa
@Guffa 噢,我明白了。我觉得你说得对。 - Boris the Spider
2个回答

7
正如您所看到的,该算法通过比较相邻的两个值来工作,这使它成为冒泡排序,但有趣的是,排序似乎不是从左到右进行的,而是从右到左进行的;这反过来使其成为反向冒泡排序

冒泡排序看起来很合理,谢谢!(我在大学学过,但是错过了这一天 >.<) - Martin Košťál

2

这是一种从右侧开始的冒泡排序算法。除了速度非常慢之外,它会从右到左比较相邻元素。一旦发现两个相邻元素的顺序错误,就会将它们交换位置。下一轮排序算法将再次从右侧开始。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接