栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Java

shell数组

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

shell数组

一.数组

变量:存储单个元素的内存空间
数组:存储多个元素的连续的内存空间,相当于多个变量的集合

二.数组的作用

1.多个元素的组合,变量的集合,将相同特性的一类数据存进数组中。
2.在数组中怎么区分每个数据,给每个元素编上号。
3.数组的分类
普通、关联

三.数组名和索引

索引的编号(下标)从0开始,属于数值索引
索引可支持使用自定义的格式,而不仅是数值格式,即为关联索引,bash 4.0版本之后开始支持
bash的数组支持稀疏格式(索引不连续)

四.声明数组

普通数组可以不事先声明,直接使用
declare -a 
关联数组必须先声明,再使用
declare -A 

普通数组


关联数组
1.先申明 2.在赋值


五.数组遍历

循环输出定义值

六.数组切片

获取需要的结果(表示1到3,0和其他不输出)

七.数组替换

/10/80:将前定义的值更改为后面的值

八.冒泡排序

数组排序算法

冒泡排序
类似气泡上涌的动作,会将数据在数组中从小到大或者从大到小不断的向前移动。

基本思想

冒泡排序的基本思想是对比相邻的两个元素值,如果满足条件就交换元素值,
把较小的元素移动到数组前面,把大的元素移动到数组后面(也就是交换两个元素的位置),
这样较小的元素就像气泡一样从底部上升到顶部。

算法思路

冒泡算法由双层循环实现,其中外部循环用于控制排序轮数,一般为要排序的数组长度减1次,因为最后一次循环只剩下一个数组元素,不需要对比,同时数组已经完成排序了。而内部循环主要用于对比数组中每个相邻元素的大小,以确定是否交换位置,对比和交换次数随排序轮数而减少。


#定义数组
read -p "定义数组:" shu
a=($shu)

#假设定义最大数
b=${a[0]}

#循环(取值范围从0到a的定义的最大数,i++:给跳出条件,避免死循环)
for ((i=0;i<${#a[*]};i++))

#第一个值小于第二个值,直到找打最大的数循环结束
do
 if [[ $b -lt ${a[$i+1]} ]];then
 c=${a[$i+1]}
fi
done
echo "$c"

转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1040713.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号