给定冒泡排序算法:
Algorithm BubbleSort(A[0...n]):
for i <- 0 to n-2 do
for j <- 0 to n-2-i do
if(A[j+1] < A[j] then swap(A[j], A[j+1]))
我必须重写冒泡排序算法,使用我们在第 i 次遍历列表时将最小元素“向上冒泡”到第 i 个位置的位置。
谁能帮我解决这个问题?
最佳答案
目前你正在从头遍历数组,因此如果你遇到最大的元素,它将“冒泡”到数组的末尾。如果你想做相反的事情,将最小的元素“向下冒泡”到开头,你需要从相反的方向遍历数组,从结尾到开头。希望对您有所帮助。
关于algorithm - 使用 Bubble Up 的冒泡排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21784313/