shell脚本实现希尔(shell)排序

来源:互联网 发布:麻瓜编程 编辑:程序博客网 时间:2024/06/06 01:30
  • 题目:采用shell脚本实现希尔排序
    最近刚刚学习啦shell脚本编程,因此写了一个简单的希尔排序
#! /bin/bash arr=("5" "7" "1" "4" "3" "6" "8" "9")size=${#arr[@]}gap=$sizeecho "before arr:" ${arr[*]}while [ $gap -gt 1 ]do    ((gap=(gap/3)+1))    for((i=gap;i<size;i+=gap ))    do        let temp=${arr[$i]}        let start=i-gap        while [ $start -ge 0 -a $temp -lt ${arr[$start]} ]    do            let sum=start+gap            let arr[$sum]=${arr[$start]}            let start-=gap            if [ $start -lt 0 ];then                 break;            fi        done        let arr[$start+$gap]=$temp    donedoneecho "after arr :" ${arr[*]}

程序结果:
这里写图片描述

原创粉丝点击