從鍵盤賦值
# /bin/bash
# 氣泡排序
number=(66
3215100
701608)
for(
(i=1
;i<$
;i++))
dofor
((j=
0;j<$
-$i;j++))
doif
[ $-lt $
] then
temp=$
number[j]
=$ number[j+1]
=$temp
fidone
done
echo $
#!
/bin/bash
# 氣泡排序
score=(66
3215100
701608)
for(
(i=1
;i<$
;i++))
dofor
((j=
0;j<$
-$i;j++))
doif
[ $-gt $
] then temp=$
score[j]
=$ score[$(
($j+1)
)]=$temp
fidone
done
echo $
執行指令碼檔案只要不輸入no就會一直執行
#!
/bin/bash
# 鍵盤輸入氣泡排序k=0
while
true
do read -p "是否需要輸入數值?"
doif
[ $do
=="no"
] then break
firead -p "請輸入第$(($k+1))個元素" key
score[$k]
=$key
let k++
done
for(
(i=1
;i<$
;i++))
dofor
((j=
0;j<$
-$i;j++))
doif
[ $-gt $
] then temp=$
score[j]
=$ score[j+1]
=$temp
fidone
done
echo $
Shell氣泡排序
通過對資料迴圈排序,得出數值大小,進行排序。bin bash 氣泡排序 score 10 511007060 for i 1 i i dofor j 0 j i j doif gt then temp 中間變數 score j score j 1 temp fidone done echo 此處 j...
Shell氣泡排序
類似氣泡上湧的動作,會將資料在陣列中從小到大或者從大到小不斷地向前移動。由雙層迴圈實現,其中外部迴圈用於控制排序輪數,一般為要排序的陣列長度減1次,因為最後一次迴圈只剩下乙個陣列元素,不需要對比的,同時陣列已經完成排序了,而內部迴圈主要用於對比陣列中每個相鄰元素的大小,以確定是否交換位置,對比和交換...
實驗 shell 氣泡排序
演算法原理 氣泡排序的原理 以遞增序為例 是每次從頭開始依次比較相鄰的兩個元素,如果後面乙個元素比前乙個要大,說明順序不對,則將它們交換,本次迴圈完畢之後再次從頭開始掃瞄,直到某次掃瞄中沒有元素交換,說明每個元素都不比它後面的元素大,至此排序完成。由於氣泡排序簡潔的特點,它通常被用來對於計算機程式設...