这里写目录标题
一, 冒泡排序的定义
类似气泡上涌的动作,会将数据在数组中从小到大或者从大到小不断地向前移动。
二,算法思路:
由双层循环实现,其中外部循环用于控制排序轮数,一般为要排序的数组长度减1次,因为最后一次循环只剩下一个数组元素,不需要对比的,同时数组已经完成排序了,而内部循环主要用于对比数组中每个相邻元素的大小,以确定是否交换位置,对比和交换次数随排序轮数而减少。
三,shell实验
1,将数字1,10,66,20,11,88,6,19排序
[root@localhost ~]# vim maopao.sh
#!/bin/bash
# 冒泡排序
score=(1 10 66 20 11 88 6 19)
for (( i=1;i<${#score[*]};i++))
do
for (( j=0;j<${#score[*]}-$i;j++))
do
if [ ${score[j]} -gt ${score[$(($j+1))]} ]
then temp=${score[j]}
score[j]=${score[$(($j+1))]}
score[(($j+1))]=$temp
fi
done
done
echo ${score[*]}
[root@localhost ~]# sh maopao.sh
1 6 10 11 19 20 66 88
2.,
版权声明:本文为weixin_48185643原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。