$arr=[8,3,1,2,5] #定義全域性陣列,用於氣泡排序
$arr1=[9,6,7,1,4] #定義全域性陣列,用於選擇排序
$arr2=[10,25,7,2,5,1,30,28,21] #定義全域性陣列,用於插入排序
$temp=0 #全域性變數,用於交換數字
#氣泡排序
puts "氣泡排序\n"
=begin
upto迴圈控制冒泡次數
downto迴圈控制每次比較的次數
=end
1.upto(4)
}#用,將每個元素連線起來進行輸出
print $arr.join(","),"\n"
#選擇排序
puts "\n選擇排序\n"
=begin
外層upto迴圈選定每次待比較的元素
內層upto迴圈控制比較的元素
=end
0.upto(3)
}print $arr1.join(","),"\n"
#插入排序
puts "\n插入排序\n"
=begin
本人覺得氣泡排序其實是所有排序的乙個根本出發點。。。
無言選擇幾次,插入幾次,最終都是將最小的陣列長度-1個元素給放到最
前面就搞定了。。。當然插入排序是最難的,花了點時間
第乙個upto迴圈控制比較的次數。。。
第二個upto迴圈開始比較,一旦發現比前面乙個元素小,就停止此迴圈,同時記錄這個元素用其下標,轉向第三個upto迴圈依次向後挪位置就可以了,當然第一次挪位置後就要跳出來,不能再迴圈了。。。
=end
$num=0
$index=0
f=false
0.upto($arr2.length-1)
if f then
0.upto($index-1); $arr2[n]=$num;break;) if $arr2[n]>$num
}f=false
end}
print $arr2.join(","),"\n"
冒泡 選擇 插入排序
氣泡排序氣泡排序實現記口訣 n個數字來比較外層迴圈n 1,內層迴圈n 1 i public static void main string args for int i 0 ia j 1 第一層 第1次比較 8,7,6,5,4 第2次比較 7,8,6 5,4 第3次比較 7,6,8,5 4 第4次比...
氣泡排序,選擇排序,插入排序
氣泡排序,選擇排序,插入排序 小規模的檔案以及基本有序的檔案,插入排序的效能比快速排序的效能更為有效一些,實際上,插入排序通常也做快速排序實現的一部分。1 氣泡排序 packagedatastrut public classbubblesort public voidinsert longvalue...
選擇排序 , 插入排序 , 氣泡排序
編寫 include void println int array,int len 列印給定長度的陣列 printf n void swap int array,int i,int j 交換陣列中兩個位置的元素 void selectionsort int array,int len o n n 對...