Linux / Unix shell脚本中的冒泡排序

时间:2013-02-08 21:16:30

标签: linux shell unix sorting bubble-sort

我正在尝试执行冒泡排序是Unix shell脚本。为什么我的代码不起作用?

a=(10 8 20 25 12)

for ((i=0;i<5;i++))
do
 for((j=0;j<5;j++))
 do
if ((${a[j]} > ${a[$((j+1))]}))
then
  v=${a[$j]}
  a[$j]=${a[$((j+1))]}
  a[$((j+1))]=$v
    fi
 done
done
    echo ${a[*]}
    echo "end..."

1 个答案:

答案 0 :(得分:3)

我想这是作业。因此,我不会给出代码,只需指出代码中的错误:

for((j=0;j<5;j++))然后阅读a[j+1],这会有问题,因为当j=4j+1不存在时

修复此问题,您的程序将排序。