shell指令碼寫氣泡排序

weixin_34402408發表於2016-10-12
array=(2 4 8 9 7) #不能有逗號!
i=0
j=0
temp=0
t=0
p=0
while [ $i -lt 5 ]
do
    j=0
    while [ $j  -lt  `expr 5 - ${i}` ]
     do
      let  t=array[j]
       let  p=array[j+1]
      if [  $t \<  $p ]
        then 
               let    temp=array[${j}]
                let    array[${j}]=array[`expr ${j} + 1` ]
               let    array[`expr ${j} + 1`]=temp
          fi
           let   j++
      done
   let  i++
done

i=0
while [$i  -lt  5 ]
do 
    r=${i}
    o=${array[$r]}
     printf "$o\n"
  let i++
done

相關文章