用数组编写几个shell程序

数组倒序
1.test 'array reverse'
echo "input seven number to form an array";
for (( i=0; i<7; i++ )); do
read a;
yes[i]=$a;
done;
echo "Original array: ${yes[@]}";
for (( i=0,j=6; i<j; i++,j-- )); do
t=${yes[i]};
yes[i]=${yes[j]};
yes[j]=$t;
done;
echo "Sorted array: ${yes[@]}";

命令执行如下:
jeremy@ubuntu:~$ chmod 755 /tmp/reverse
jeremy@ubuntu:~$ /tmp/reverse
input seven number to form an array
4
5
1
2
3
7
6
Original array: 4 5 1 2 3 7 6
Sorted array: 6 7 3 2 1 5 4

冒泡排序法:
2.test 'BubbleSort'
echo "input seven number to form an array";

for (( i=0; i<7; i++ )); do
read a;
yes[i]=$a;
done;
echo "Original array: ${yes[@]}";

for (( i=0; i<7; i++ )); do

for (( j=0; j<6-i; j++ )); do
if (( ${yes[j]} > ${yes[j+1]} )); then
t=${yes[j]};
yes[j]=${yes[j+1]};
yes[j+1]=$t;
fi
done;

done;
echo "Sorted array: ${yes[@]}";

命令执行如下:
jeremy@ubuntu:~$ chmod 755 /tmp/BubbleSort
jeremy@ubuntu:~$ /tmp/BubbleSort
input seven number to form an array
4
5
1
2
3
7
6
Original array: 4 5 1 2 3 7 6
Sorted array: 1 2 3 4 5 6 7

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,792评论 0 33
  • 为何叫做 shell ? shell prompt(PS1) 与 Carriage Return(CR) 的关系?...
    Zero___阅读 3,218评论 3 49
  • 1-一切都是自传,意思是,每个人讲的故事,都是在说他自己。 2-村上春树常常写到井,有一个情节出现过很多次:男主人...
    依诺芝阅读 617评论 0 1
  • 寒冷的时候 想起了 温暖的季节 眼前 都是你 时间就像 蒲公英的种子 风一吹 就飞远了 而回忆就像 飞落在地里的 ...
    美生活阅读 200评论 0 2
  • 早起头晕! 头晕不想起! 不起又不行! 忍着头晕爬起来! 哈哈哈!
    客客韖撋阅读 219评论 0 1