求取列表“峰与谷”

简介: 求取列表“峰与谷”

1 引言

       本题来源于力扣周赛的第一题,目的是通过独特的算法加上简单的编程解决问题。

2 问题描述

  给你一个下标从 0 开始的整数数组 nums 。如果两侧距 i 最近的不相等邻居的值均小于 nums[i] ,则下标 i nums 中,某个峰的一部分。类似地,如果两侧距 i 最近的不相等邻居的值均大于 nums[i] ,则下标 i nums 中某个谷的一部分。对于相邻下标 i j ,如果 nums[i] == nums[j] , 则认为这两下标属于 同一个 峰或谷。
注意,要使某个下标所做峰或谷的一部分,那么它左右两侧必须 都 存在不相等邻居。
返回
nums 中峰和谷的数量。
示例
1
输入:
nums = [2,4,1,1,6,5]
输出:3
解释:
在下标
0 :由于 2 的左侧不存在不相等邻居,所以下标 0 既不是峰也不是谷。
在下标
1 4 的最近不相等邻居是 2 1 。由于 4 > 2 4 > 1 ,下标 1 是一个峰。
在下标
2 1 的最近不相等邻居是 4 6 。由于 1 < 4 1 < 6 ,下标 2 是一个谷。
在下标
3 1 的最近不相等邻居是 4 6 。由于 1 < 4 1 < 6 ,下标 3 符合谷的定义,但需要注意它和下标 2 是同一个谷的一部分。
在下标
4 6 的最近不相等邻居是 1 5 。由于 6 > 1 6 > 5 ,下标 4 是一个峰。
在下标
5 :由于 5 的右侧不存在不相等邻居,所以下标 5 既不是峰也不是谷。
共有
3 个峰和谷,所以返回 3

3 算法描述

本题解题的思路在于判断列表内数据的特点,我们根据题目的描述可以知道峰与谷的特点(峰:一个元素比前一个和后一个元素大)(谷:一个元素比前一个元素和后一个元素小)。通过前面两个特点我们就可以通过循环进行判断,但我们还需要注意的一点是峰值的元素可以跟后一个元素一样,谷值的特点也可以和后一个元素一样。同时因为这道题目的特殊性,我们还需要对列表中相邻的两个元素进行去重。

4 代码

def wz():
   num = []
   for x in range(len(nums) - 1):
       if nums[x] != nums[x + 1]:
           num.append(nums[x])
   num.append(nums[-1])
   n = 0
   for i in range(1, len(num) - 1):
       if (num[i] > num[i - 1] and num[i] >= num[i + 1]) or (num[i] < num[i - 1] and num[i] <= num[i + 1]):
           n += 1
       else:
           n += 0
   return n


nums = [5, 7, 7, 1, 7]
print(wz())


5 结语

通过对题目的判定,想到最简单的方法,再加以实现,这才是编程的魅力。


目录
打赏
0
0
0
0
14
分享
相关文章
力扣经典150题第五十题:用最少数量的箭引爆气球
力扣经典150题第五十题:用最少数量的箭引爆气球
54 0
“智慧的车,聪明的路”距离市场还有多远?
随着油价连续上涨,新能源汽车再次迎来利好。在能够蚕食燃油车市场的“历史机遇”面前,新能源车却玩起了涨价。这并不是新能源“傲娇”,而是主战场已经开始悄悄转换,从堆料砸性价比,迈向了智能化升级的路。 在这一波军备竞赛中,车联网无疑是一个可操作的、能立竿见影提升产品力的、能迅速拉开与燃油车代差的选项。
孔雀折翼空中浩劫,东航MU5735航班高空垂直骤降八千米坠毁失事原因技术性分析
公元2022年3月21日北京时间下午2点22分,东航MU5735航班(昆明至广州航段),以接近音速的速度和近乎垂直的角度,高速俯冲地面坠毁。
孔雀折翼空中浩劫,东航MU5735航班高空垂直骤降八千米坠毁失事原因技术性分析
算法|计算让汽车路程最近有多少种方法
算法|计算让汽车路程最近有多少种方法
135 0
10米精度NPP净初级生产力数据/NDVI数据/植被类型数据/土地利用数据/降雨气温分布数据/太阳辐射分布数据
10米精度NPP净初级生产力数据/NDVI数据/植被类型数据/土地利用数据/降雨气温分布数据/太阳辐射分布数据
10米精度NPP净初级生产力数据/NDVI数据/植被类型数据/土地利用数据/降雨气温分布数据/太阳辐射分布数据
全国夜间灯光指数数据、GDP密度分布、人口密度分布、土地利用数据、降雨量数据
全国夜间灯光指数数据、GDP密度分布、人口密度分布、土地利用数据、降雨量数据
全国夜间灯光指数数据、GDP密度分布、人口密度分布、土地利用数据、降雨量数据

热门文章

最新文章