#先尋找最小的數與array[0]交換,再尋找第二小的數和array[1]交換。
array=[31,41,59,26,41,58]
0.upto(array.length-2) do |count|
min=1000 #最小值
index=0
start=count
while startif array[start]min=array[start]
index=start
endstart=start+1
endif count!=index
array[index]=array[count]
array[count]=min
endend
puts array
Ruby排序演算法
1.氣泡排序 百科 wiki def bubble sort arr 1.upto arr.length 1 do i arr.length i times do j if arr j arr j 1 arr j arr j 1 arr j 1 arr j endend endarr endarra...
外部排序ruby實現
value 陣列型別,儲存待比較大小的元素。陣列長度比敗者樹陣列長度大1 loser tree 陣列型別,敗者樹。陣列元素是value陣列的索引 node 待調整的葉子結點在value陣列中的索引 def adjust loser tree value,loser tree,node 求葉子結點的父...
排序 選擇排序 選擇排序 堆排序
寫在前面 上傳github交換排序選擇排序 堆排序 選擇排序 顧名思義,我們就可以猜到,它是原則合適的元素放到合適的位置 從圖中,我們可以得到 1.用第乙個元素,和其他所有的元素進行比較,找出最小的,然後進行交換 2.然後進行,資料的遞增 3.直到資料全部有序 void selectsort int...