shell脚本 冒泡法对数字排序

整体思路:用前一个值和后面的所有值作比较,将较小的值付给前一值,循环完成就能将一组数,从小到大排列。更改比较条件(-gt),就可以将数组从大到小排列。



#!/bin/sh

#sorting following array

echo "please input a number list:"

read -a arr

for (( i=0 ; i<${#arr[@]} ; i++ ))

do

  for (( j=${#arr[@]} - 1 ; j>i ; j-- ))

  do

    #echo $j

    if  [[ ${arr[j]} -lt ${arr[j-1]} ]]

    then

       t=${arr[j]}

       arr[j]=${arr[j-1]}

       arr[j-1]=$t

    fi

  done

done

echo "after sorting:"

echo ${arr[@]}

你可能感兴趣的:(shell脚本 冒泡法对数字排序)