您的位置:首页 > 运维架构 > Shell

bash编程实现插入排序

2015-09-10 16:52 453 查看
插入排序是先把左边的数当成已排序列,然后逐个按大小插入数字至全部排列好的排序方法,下面是我参考百度百科C语言版改写的bash脚本。

#! /bin/bash

#插入排序

declare -i i

declare -i j

read -p "enter num: " -a num

i=1

while [ $i -lt ${#num[@]} ]

do

    tm=${num[$i]}

    j=$i-1

    while [ $j -ge 0 ] && [ ${num[$j]} -gt $tm ]

    do

        num[$j+1]=${num[$j]}

        j=$j-1

    done

    [ j != $i-1 ] && num[$j+1]=$tm

    echo "           ${num[@]}"

    i=$i+1

done

ubuntu15.04终端测试结果

5 4 3 2 1

4 5 3 2 1

3 4 5 2 1

2 3 4 5 1

1 2 3 4 5
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  bash 插入排序