shell 冒泡算法 解決數組排序問題

首先咱們要了解冒泡算法的操做原理html

1.經過兩個數比較,大的數向後移動,再和下一個進行比較,若是還大,繼續向後移動。算法

2.每一個數都要進行比較數組

複製代碼
 1 #!/bin/bash 2 3 echo "輸入一個數組:" 4 read -a num 5 6 for((i=0;i<${#num[@]};i++)) 7 do 8 for((j=0;j<${#num[@]}-1;j++)) 9 do 10 if [ ${num[j]} -gt ${num[j+1]} ] 11 then 12 tmp=${num[j]} 13 num[j]=${num[j+1]} 14 num[j+1]=$tmp 15 fi 16 done 17 done 18 19 echo "排序完成!!!!" 20 echo "${num[@]}"
複製代碼

測試:bash

[root@logan day4]# bash numpaixu.sh 輸入一個數組: 100 59 41 52 1 2 8 74 62 排序完成!!!! 1 2 8 41 52 59 62 74 100

轉載於:https://www.cnblogs.com/MR-ws/p/11084780.htmlpost