我是靠谱客的博主 野性高山,最近开发中收集的这篇文章主要介绍Shell冒泡排序原理和算法算法原理,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

算法原理

冒泡排序的原理(以递增序为例)是每次从头开始依次比较相邻的两个元素,如果后面一个元素比前一个要大,说明顺序不对,则将它们交换,本次循环完毕之后再次从头开始扫描,直到某次扫描中没有元素交换,说明每个元素都不比它后面的元素大,至此排序完成。

由于冒泡排序简洁的特点,它通常被用来对于计算机程序设计入门的学生介绍算法的概念。

具体操作过程

第一种方法

#!/bin/bash
# 冒泡排序
score=(70 10 40100 5 60)
for ((i=1;i<s{#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[*]}

第二种方法
键盘输入冒泡排序

#!/bin/ bash
#键盘输入冒泡排序
k=0
while true
do
   read -p "是否需要输入数值? " do
   if [ $do  == "no"]
   then break
   fi
   read -p "请输入第$(($k+1))个元素" key
   score[$k]=$key
   let k++
done
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[*]}

最后

以上就是野性高山为你收集整理的Shell冒泡排序原理和算法算法原理的全部内容,希望文章能够帮你解决Shell冒泡排序原理和算法算法原理所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(50)

评论列表共有 0 条评论

立即
投稿
返回
顶部