今天禀享一种 选择排序 的 shell 剧本,多多操练这种近似剧本,对于shell 剧本的利用和理解算法仍是比力有帮忙的;
东西/原料
- 电脑
- linux
方式/步调
- 1
起首我们看下 ,剧本的结果;就是 提醒 输入一组 数字(数字之间要有空格,否则会默认为是一个数字,在linux系统中划分数字,一般以 空格划分)然后将这组数字,从小到年夜从头排序输出;
- 2
之后我们看一下,在了 linux 中,怎么界说 一个数组;和输出 这个数组;还有单个输出 数组内的元素;如下图,单个输出数字就是依靠 数组中的下标;也是我们选择排序的关头;
- 3
在剧本中 获取 数组 ,同样需要 read 获取键值,同时我们 需要加 选项 -a 来界说 剧本中的 N 是数组变量,并把接管到的 数字 放到 N 里面;
- 4
下图是我百度到的选择排序的界说,大师可以看看,理解一下,算法理解了,如许敲代码写剧本也会更快,更驾轻就熟;
- 5
然后直接 放 剧本;大要诠释一下我的思绪,就是两层 for 轮回,让 数组 内的数组可以都比力一遍;同时 在 轮回内 进行 数子巨细比力 和 换位置;
- 6
如图 画圈的 代码,就是界说 一个 min 变量记住轮回内 数字的位置 ;然后经由过程 二层 for 轮回进行比力,若是 后面的变量 $j 这个下标代表的数字 ${N[$j]} 比 $min 代表的数字小,那么 就用 min标识表记标帜这个数,半斤八两于交换下标了;
- 7
然后就是 关头的 换数值,如下图,将 $min 代表的小的数字 ( 已经换过的),给到此刻 的 $i , $i 代表的年夜一点的数字给到 $min ; 如许最小的数字就排到了前面;
注重事项
- 小我进修经验仅作分享;
- 表达能力有限,但愿大师可以本身多练,本身理解;
来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!
本文链接:https://www.ibaiwen.com/web/231725.html
- 热门文章
-
WB蒙特利尔(WB Montreal)——欧美十大最差视频游戏开发商
迅猛龙(Velociraptor)——欧美史前十大死亡动物
什么是果酱猫(What Marmalade Cats)?
神奇蜘蛛侠2(The Amazing Spider-Man 2)——欧美最佳蜘蛛侠电影
希瑟(Heather)——欧美十大最佳柯南灰歌
二人梭哈
faceu激萌怎么把瘦脸开到最大
奥兹奥斯本(Ozzy Osbourne)——欧美十大高估歌手
什么是小脑前下动脉(Anterior Inferior Cerebellar Artery)?
我应该知道康涅狄格州的什么(What Should I Know About Connecticut)?
- 热评文章
- 最新评论
-
- 最近访客
-
- 站点信息
-
- 文章总数:200248
- 页面总数:9
- 分类总数:1
- 标签总数:0
- 评论总数:0
- 浏览总数:497