给定一个数组,数组中的每个元素代表该位置的海拔高度。0表示平地,>=1时表示属于某个山峰,山峰的定义为当某个位置的左右海拔均小于自己的海拔时,该位置为山峰。数组起始位置计算时可只满足一边的条件。

 
mountList = [3,0,3,4,1]
class MountCount:
    def valueMountCount(self,arr):
        count = 0
        i = 0
        # 先得出列表长度
        mountListLen = len(arr)
        # 判断列表长度,如果长度为0则为空列表直接返回山峰数为0
        if mountListLen == 0:
            return count
        #如果列表长度为1,需要判断是平地还是山峰
        elif mountListLen ==1:
            count+=1 if mountList[0]>0 else count
            return count
        # 列表长度不为1的情况
        else:
            # 循环判断
            while True:
                #当i表示大于列表的长度则停止循环
                if i >= mountListLen:
                    return count
                else:
                    #不为1得情况需要先判断左侧边界
                    if i == 0:
                        # 判断左侧边界是否为山峰
                        if arr[i + 1] < arr[i]:
                            count += 1
                    # 判断右侧最后一个值是否为山峰
                    elif i == mountListLen - 
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值