Shell中基于数组的栈模拟实现

1、Shell数组基本操作

    1)数组定义及初始化

         array=(1 2 3)# 注意用空格将各个元素分开而不是逗号或者分号;

        另外还可直接赋值实现初始化:

        array[0]=1

        array[1]=2

        array[2]=3

    2)数组长度获取

        Echo “the length of array:”${#array[@]}

    3)数组元素获取

        全部元素获取:${array[@]}

        某个固定位置元素获取:${array[1]}

        部分元素获取:获取下标为2-3的元素:${array[@]:2:3},获取从下标2开始的所有元素:${array[@]:2},获取下标小于2的所有元素:${array[@]::2}

    4)数组元素删除

        unset array[0]

    5)数组遍历

        #利用for进项遍历(有下标显示)

         for i in "${!array[@]}"

         do

             printf  "%s\t%s\n" "$i" "${array[$i]}"

         done

        #利用for进项遍历(无下标显示)

          for var in "${array[@]}"

         do

              echo $var

         done

        #利用while进项遍历

         i=0

         while [ $i -lt ${#array[@]} ]

         do

             echo ${array[$i]}

             ((i++))

         done

2、基于数组的模拟栈实现

     array=(1 2 3 4 5)

    Push操作:

        array=(“${array[@]}” $element)

    Pop操作:

        if [ ${#array[@]} -gt 0 ];then

        array=(${array[@]:0:$((${#array[@]}-1))})

        fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值