首页 > 代码库 > shell   找出数组元素中的最大值

shell   找出数组元素中的最大值

shell 如何比较出数组中所有元素中的最大值?如:

array=(111 222 333 444 555 999 888 777 666)怎么找出最大的那个元素999呢?

思路:先设置一个值MAX=${array[0]}即数组的第一个元素,再使用for循环,拿第一个元素与第二个.....比较,当有一个元素比如3号元素比array[0]大时,就把3号元素的值赋值给MAX,最后输出MAX即可!

技术分享

                文本如下

#!/bin/bash

#Author:wangergui       Email:291131893@qq.com          Date:2016-09-17

#Release 1.0

#Function find maxnum from array

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:~/bin

export PATH

declare -a array

array=(111 222 333 444 555 999 888 777 666)

MAX=${array[0]}

for I in ${!array[@]};do


        if [[ ${MAX} -le ${array[${I}]} ]];then


            MAX=${array[${I}]}


        fi


done


echo ${MAX}



本文出自 “linux相关技术” 博客,谢绝转载!

shell   找出数组元素中的最大值