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

bash编程实现冒泡排序

2015-09-10 09:37 489 查看
冒泡排序是比较相邻两位数大小,将大(或者小)的数字放在后面,再不断重复上述步骤获得数字排序的方法,网上有很多不同语言的实现方法,用bash的比较少,下面是我参考百度百科C语言版用bash脚本写的程序。

#! /bin/bash

#冒泡排序

declare -i n

declare -i i

read -p "enter num: " -a num

n=${#num[@]}

while [ $n -gt 1 ]

do

    i=1

    while [ $i -lt $n ]

    do

        if [ ${num[$i-1]} -gt ${num[$i]} ]

        then

            tm=${num[$i]}

            num[$i]=${num[$i-1]}

            num[$i-1]=$tm

        fi

        i=$i+1

    done

    echo "           ${num[@]}"

    n=$n-1

done

在ubuntu15.04下的测试结果

5 4 3 2 1

4 3 2 1 5

3 2 1 4 5

2 1 3 4 5

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