shell脚本选择排序事例

         今天禀享一种 选择排序  的 shell 剧本, 多多操练这种近似剧本, 对于shell 剧本的利用和理解算法仍是比力有帮忙的;

需要这些哦
电脑
linux
方式/
1起首我们看下 , 剧本的结果;就是 提醒 输入一组 数字(数字之间要有空格, 否则会默认为是一个数字, 在linux系统中划分数字, 一般以 空格划分)然后将这组数字, 从小到年夜从头排序输出;

shell脚本选择排序事例

文章插图

2之后我们看一下, 在了 linux 中, 怎么界说 一个数组;和输出 这个数组;还有单个输出 数组内的元素;如下图, 单个输出数字就是依靠 数组中的下标;也是我们选择排序的关头;

shell脚本选择排序事例

文章插图

3在剧本中 获取 数组 , 同样需要 read 获取键值, 同时我们 需要加 选项 -a 来界说 剧本中的 N 是数组变量, 并把接管到的 数字 放到 N 里面;

shell脚本选择排序事例

文章插图

4下图是我百度到的选择排序的界说, 大师可以看看, 理解一下, 算法理解了, 如许敲代码写剧本也会更快, 更驾轻就熟;

shell脚本选择排序事例

文章插图

5然后直接 放 剧本;大要诠释一下我的思绪, 就是两层 for 轮回, 让 数组 内的数组可以都比力一遍;同时 在 轮回内 进行 数子大小比力 和 换位置;

shell脚本选择排序事例

文章插图

6如图 画圈的 代码, 就是界说 一个 min 变量记住轮回内 数字的位置 ;然后经由过程 二层 for 轮回进行比力, 若是 后面的变量   $j  这个下标代表的数字  ${N[$j]}   比 $min 代表的数字小, 那么 就用 min标识表记标帜这个数, 半斤八两于交换下标了;

shell脚本选择排序事例

文章插图

7【shell脚本选择排序事例】然后就是 关头的 换数值, 如下图, 将 $min  代表的小的数字 ( 已经换过的), 给到此刻 的 $i , $i 代表的年夜一点的数字给到 $min ;  如许最小的数字就排到了前面;

shell脚本选择排序事例

文章插图

注重事项小我进修经验仅作分享;
表达能力有限, 但愿大师可以本身多练, 本身理解;

以上内容就是shell脚本选择排序事例的内容啦, 希望对你有所帮助哦!

    推荐阅读