面试题 10.11. 峰与谷

面试题 10.11. 峰与谷
原始题目链接:https://leetcode-cn.com/problems/peaks-and-valleys-lcci/submissions/
在一个整数数组中,“峰”是大于或等于相邻整数的元素,相应地,“谷”是小于或等于相邻整数的元素。例如,在数组{5, 8, 4, 2, 3, 4, 6}中,{8, 6}是峰, {5, 2}是谷。现在给定一个整数数组,将该数组按峰与谷的交替顺序排序。
示例:
输入: [5, 3, 1, 2, 3] 输出: [5, 1, 3, 2, 3]
解题思路:

一次遍历,判断当前元素和它的前一个元素比较,依据题目的峰和谷的定义,假设一个峰谷交错的顺序,然后比较即可。具体实现看代码及注释。

代码实现:
class Solution:
def wiggleSort(self, nums: List[int]) -> Non

面试题 10.11. 峰与谷最先出现在Python成神之路

版权声明:
作者:lichengxin
链接:https://www.techfm.club/p/4080.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>