-2
我必須在項目中使用紅寶石進行冒泡排序,並且遇到問題。我將wikipedia上的僞代碼翻譯成ruby,而且它沒有按預期工作。我不太確定有什麼問題。問題與紅寶石排序
swapped = false
def bubble_sort(list,swapped)
length = list.length
i = 1
until !swapped do
swapped = false
list.each do |i|
if list[i-1] > list[i]
list[i-1], list[i] = list[i], list[i-1]
swapped = true
end
end
end
return list
end
puts bubble_sort([1,3,7,4,6,9,10,5,8,2], swapped)
它以什麼方式不起作用? – 2014-10-07 13:47:05
它正在打印傳入的原始數組。 – jdublu10 2014-10-07 13:48:38
您是否已完成任何調試?我不記得泡泡排序是如何工作的,但是你所做的錯誤會在調試時做出極小的努力就會變得非常明顯。我會給你一個提示,我會調查list.each塊。這和你錯過了算法的遞歸部分。 – 2014-10-07 13:55:40