程序员面试金典 - 面试题 10.11. 峰与谷(排序/不排序)

1. 题目

在一个整数数组中,“峰”是大于或等于相邻整数的元素,相应地,“谷”是小于或等于相邻整数的元素。

例如,在数组{5, 8, 2, 6, 3, 4, 3}中,{8, 6}是峰, {3, 2}是谷。
现在给定一个整数数组,将该数组按峰与谷的交替顺序排序。

示例:
输入: [5, 3, 1, 2, 3]
输出: [5, 1, 3, 2, 3]提示:
nums.length <= 10000

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/peaks-and-valleys-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

2.1 排序

  • 排序后两个一组进行交换
    在这里插入图片描述
class Solution {
public:void wiggleSort(vector<int>& nums) {sort(nums.rbegin(), nums.rend());int i = 1, j = nums.size()-1;while(i < j){swap(nums[i], nums[i+1]);i += 2;}}
};

68 ms 13.7 MB

2.2 不排序

  • 每次跟前一位比较,满足当前定义的峰还是谷
    在这里插入图片描述
class Solution {
public:void wiggleSort(vector<int>& nums) {for(int i = 1; i < nums.size(); ++i){if((i&1))//奇数位,定义为谷{if(nums[i] > nums[i-1])swap(nums[i], nums[i-1]);}else//峰{if(nums[i] < nums[i-1])swap(nums[i], nums[i-1]);}}}
};

16 ms 13.2 MB

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/476770.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机视觉自学进阶路上不可忽略的几个原创公众号

人工智能行业目前已接近饱和状态&#xff0c;如何从内卷中脱颖而出&#xff0c;除了极强的自律之外&#xff0c;系统性的学习方法也很重要。今天给大家推荐10个原创公众号&#xff0c;这些公众号定期会发些高质量原创&#xff0c;希望可以让你更高效的学习。深度学习与图网络最…

python列表功能默写_初识 Python 作业及默写

1、简述变量量命名规范 2、name input(“>>>”) name变量是什么数据类型? 3.if条件语句的基本结构? 4.用print打印出下面内容: 文能提笔安天下, 武能上马定乾坤. 心存谋略何人胜, 古今英雄唯是君. 5.利用if语句写出猜⼤小的游戏: 设定一个理想数字比如:66&#xff…

关于淘宝的无耻!

前两天在TAOBAO上以个人名义买了两个CN域名,买了之后才知道个人是无权购买CN域名的,这也就是说个人够买的CN域名是没有任何保障的!在购买前,买家没有给出提醒,很明显,买家存在欺诈行为,所以我向TAOBAO发起投诉.下面是投诉处理结果:据淘宝游戏频道免责声明&#xff0c;如买家通过…

整顿职场,从 ROC 曲线开始

文 | 天于刀刀大家好&#xff0c;我是刀刀。这周有个哥们在组会上被领导刁难了一波&#xff0c;来群里吐槽&#xff0c;最后意外地在大神的指导下又复习了一下 precision recall rate &#xff08;PRR&#xff09; 和 ROC 曲线的知识点&#xff1a;后面聊天的画风就彻底转向吐槽…

数据结构--树状数组

文章目录1. 树状数组2. 单点修改3. 区间修改4. 完整代码5. 参考文献1. 树状数组 类似数据结构&#xff1a;线段树&#xff08;Segment Tree&#xff09; 树状数组 跟 线段树 的区别&#xff1a; 树状数组能做的事情&#xff0c;线段树都能做&#xff01;&#xff08;线段树功…

python异常数据处理_Python爬虫提高之异常处理

Python爬虫框架之异常处理 任何访问服务器获取数据的请求&#xff0c;都需要做异常处理&#xff0c;当然爬虫更需要我们对各种异常进行处理。只有这样才能提高爬虫的健壮性。如果我们的爬虫足够健壮&#xff0c;那么就能确保程序几个月不停止。 我们从以下几个方面做出讲解&…

BERT部署加速622%,YOLOv7部署加速590%,这款开源压缩神器火了!

导读 众所周知&#xff0c;计算机视觉技术&#xff08;CV&#xff09;是企业人工智能应用比重最高的领域之一。为降低企业成本&#xff0c;工程师们一直在探索各类模型压缩技术&#xff0c;来产出“更准、更小、更快”的AI模型部署落地。而在自然语言处理领域&#xff08;NLP&…

程序员面试金典 - 面试题 10.10. 数字流的秩(map/树状数组)

文章目录1. 题目2. 解题2.1 map2.2 树状数组1. 题目 假设你正在读取一串整数。每隔一段时间&#xff0c;你希望能找出数字 x 的秩(小于或等于 x 的值的个数)。 请实现数据结构和算法来支持这些操作&#xff0c;也就是说&#xff1a; 实现 track(int x) 方法&#xff0c;每读入…

python常用函数的用法_python中常用函数整理

1、map map是python内置的高阶函数&#xff0c;它接收一个函数和一个列表&#xff0c;函数依次作用在列表的每个元素上&#xff0c;返回一个可迭代map对象。 class map(object):""" map(func, *iterables) --> map objectMake an iterator that computes the…

.NET中得到计算机硬件信息

VB.NET中得到计算机硬件信息 本文汇集了在.net中得到计算机硬件信息的一些功能。 得到显示器分辨率 Dim X As Short System.http://dev.21tx.com/os/windows/" target"_blank">Windows.Forms.Screen.PrimaryScreen.Bounds.Width Dim Y As Short System.…

diffusion新高度!可一次性生成200张图??

文 | Pine 明敏&#xff08;凹非寺&#xff09;源 | 量子位给AI一个提示词&#xff0c;一次性出200张图&#xff01;生成速度嗖嗖的&#xff0c;不到3分钟全搞定。喜欢哪张任君挑选&#xff0c;还能直接二次调整编辑。咱就是说&#xff0c;这回用AI画画&#xff0c;终于不废人了…

转正

三个月的时间悄悄的溜走这也是我走出学校之前与社会的一段磨合期感觉自己是幸运的因为在我身边总是可以遇到很多很好的朋友一起陪伴着走过风风雨雨或许生活是残酷的或许我们总是会遇到这样那样不如意的事情但是只要我们勇敢的去面对雨后的天空总会有绚丽的彩虹不要埋怨命运因为…

程序员面试金典 - 面试题 17.09. 第 k 个数(set优先队列/DP)

1. 题目 有些数的素因子只有 3&#xff0c;5&#xff0c;7&#xff0c;请设计一个算法找出第 k 个数。 注意&#xff0c;不是必须有这些素因子&#xff0c;而是必须不包含其他的素因子。 例如&#xff0c;前几个数按顺序应该是 1&#xff0c;3&#xff0c;5&#xff0c;7&…

python怎么封装供java调用_python调用第三方java包实例

先看结果&#xff1a;对于python与java的互调&#xff0c;我一开始是用的py4j,但是后来发现在使用方法的时候&#xff0c;不知道如何在python中导入jar包&#xff0c;然后网上的资料也比较少。后来想不出来办法&#xff0c;又看到有Jpype这个东东。博友们说Jpype的安装比较不好…

推特大裁员后,马斯克与白宫发生冲突!META 大批裁员正在路上

文 | 天于刀刀他来了他来了&#xff01;他带着他的裁员方案走来了&#xff01;带着他的水槽 sink in 的第一天&#xff0c;全球打工人的目光不由自主地聚焦于这个神奇的男人身上&#xff1a;paypal 帮派元老&#xff0c;特斯拉 starlink 创始人&#xff0c;埃隆火星人马斯克&am…

*如何循序渐进向DotNet架构师发展(转)

微软的DotNet开发绝对是属于那种入门容易提高难的技术。而要能够成为DotNet架构师没有三年或更长时间的编码积累基本上是不可能的。特别是在大型软件项目中&#xff0c;架构师是项目核心成员&#xff0c;承上启下&#xff0c;因此RUP方法论也认同以架构为核心&#xff0c;体现4…

如何利用python整合excel_使用 Python 合并多个格式一致的 Excel 文件(推荐)

一 问题描述 最近朋友在工作中遇到这样一个问题&#xff0c;她每天都要处理如下一批 Excel 表格&#xff1a;每个表格的都只有一个 sheet&#xff0c;表格的前两行为表格标题及表头&#xff0c;表格的最后一行是相关人员签字。最终目标是将每个表格的内容合并到一个 Excel 表格…

程序员面试金典 - 面试题 17.07. 婴儿名字(并查集)

1. 题目 每年&#xff0c;政府都会公布一万个最常见的婴儿名字和它们出现的频率&#xff0c;也就是同名婴儿的数量。 有些名字有多种拼法&#xff0c;例如&#xff0c;John 和 Jon 本质上是相同的名字&#xff0c;但被当成了两个名字公布出来。 给定两个列表&#xff0c;一个…

神经网络的简单偏好

文 | 许志钦知乎&#xff08;已授权&#xff09;源 | 天天机器学习作者注记我是2017年11月开始接触深度学习&#xff0c;至今刚好五年。2019年10月入职上海交大&#xff0c;至今三年&#xff0c;刚好第一阶段考核。2022年8月19号&#xff0c;我在第一届中国机器学习与科学应用大…

电影的音乐

Yann Tiersen,法国代表作&#xff1a;《天使爱美丽》《再见&#xff0c;列宁》 对于大家来说&#xff0c;一提到扬蒂尔森(Yann Tiersen)想到的便是《天使爱美丽》。的确《天使爱美丽》使这位法国音乐人一夜成为世界注目的艺术家。在我看来《天使爱美丽》的导演让皮埃尔热内(Jea…