2013年5月9日

Shell Script 練習:氣泡排序法

將000.TXT內容由大排到小

000.txt 內容
25 33 12 74 35

sh 內容

arr=($(cat 000.txt))

function ex(){
  big=${arr[$1]}

  arr[$1]=${arr[$2]}

  arr[$2]=$big
}

function print(){  #印出排序後結果
for ((i=0; i<${#arr[@]}; i++)); do
  echo ${arr[$i]}
done
}

for (( k=${#arr[@]}-1; k>0; k--))  #比大小
do
  for (( i=0; i<$k; i++))
  do
    j=$((i+1))
    if [ ${arr[i]} -lt ${arr[j]} ];then  #大於把 -lt 改成 -gt
      ex $i $j
    fi
  done
done

print

0 意見:

張貼留言