shell实现简单的数组排序

Posted 粥里有勺糖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell实现简单的数组排序相关的知识,希望对你有一定的参考价值。

c++代码

int nums[8]={1,2,1,3,4,2,5,6};
int length=8;
for(int i=0;i<length;i++){
    for(int j=i+1;j<length;j++){
        if(nums[j]<nums[i]){
            int t=nums[j];
            nums[j]=nums[i];
            nums[i]=t;
        }
    }
}
for(int i=0;i<length;i++){
    cout<<nums[i]<<" ";
}

shell代码

i=0    #外层循环计数
j=0+$i #内层循环计数
t=0    #用于两数字交换临时变量
nums=(1 2 1 3 4 2 5 6) # 用于测试的数组
length=${#nums[*]} # 数组长度

# 外层循环开始
while [ $i -lt $length ]
do
    
    # 内层循环开始
    j=$(($i + 1))
    while [ $j -lt $length ]
    do
        # 从小到大排序
        if [ ${nums[$j]} -lt ${nums[$i]} ]
        then
            t=${nums[$i]}           
            nums[$i]=${nums[$j]}
            nums[$j]=$t
        fi
        
        # j++
        j=$(($j + 1))
    done

    # i++
    i=$(($i + 1))
done

# 输出结果
i=0
while [ $i -lt $length ]
do
    echo -e "${nums[$i]} c"
    # i++
    i=$(($i + 1))
done

以上是关于shell实现简单的数组排序的主要内容,如果未能解决你的问题,请参考以下文章

Java编程中怎样实现中文排序

快速排序-递归实现

代码片段:Shell脚本实现重复执行和多进程

多种排序算法的思路和简单代码的实现

对Shell排序算法的理解

python实现shell排序