文章目录

  • 1. 题目
  • 2. 解题

1. 题目

给你一个无序的数组 nums, 将该数字 原地 重排后使得 nums[0] <= nums[1] >= nums[2] <= nums[3]...

示例:
输入: nums = [3,5,2,1,6,4]
输出: 一个可能的解答是 [3,5,1,6,2,4]

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

2. 解题

类似题目:
LeetCode 324. 摆动排序 II
LeetCode 376. 摆动序列(贪心 & 动态规划)

  • 如果 a > b, 遇到下一个是 c, b > c,那么可知 a > c,交换b,c 得到 a > c < b
  • 同理另一种情况也对
class Solution {public:void wiggleSort(vector<int>& nums) {for(int i = 0; i < int(nums.size())-1; ++i){if(i%2==0 && nums[i] > nums[i+1])swap(nums[i], nums[i+1]);else if(i%2==1 && nums[i] < nums[i+1])swap(nums[i], nums[i+1]);}}
};

24 ms 13.6 MB


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!

LeetCode 280. 摆动排序相关推荐

  1. LeetCode 376. 摆动序列(贪心 动态规划)

    文章目录 1. 题目 2. 解题 2.1 贪心 2.2 动态规划 1. 题目 如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为摆动序列.第一个差(如果存在的话)可能是正数或负数.少于两个 ...

  2. 【leetcode】324.摆动排序 II (四种解法,快速排序+3way-partition等,java实现)

    324. 摆动排序 II 难度中等 给定一个无序的数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序. 示例 1 ...

  3. C#LeetCode刷题-排序

    排序篇 # 题名 刷题 通过率 难度 56 合并区间 31.2% 中等 57 插入区间 30.4% 困难 75 颜色分类 48.6% 中等 147 对链表进行插入排序 50.7% 中等 148 排序链 ...

  4. C++Wiggle Sort摆动排序的实现算法(附完整源码)

    C++Wiggle Sort摆动排序的实现算法 C++Wiggle Sort摆动排序的实现算法完整源码(定义,实现,main函数测试) C++Wiggle Sort摆动排序的实现算法完整源码(定义,实 ...

  5. C++描述 LeetCode 26. 删除排序数组中的重复项

    C++描述 LeetCode 26. 删除排序数组中的重复项   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客 ...

  6. LeetCode实战:排序链表

    背景 为什么你要加入一个技术团队? 如何加入 LSGO 软件技术团队? 我是如何组织"算法刻意练习活动"的? 为什么要求团队的学生们写技术Blog 题目英文 Sort a link ...

  7. 摆动排序leetcode324

    给你一个整数数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序. 你可以假设所有输入数组都可以得到满足题目要求的 ...

  8. LeetCode 82 删除排序链表中的重复元素 II python

    题目描述 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 样例 示例 1:输入: 1->2->3->3->4->4->5 输 ...

  9. LeetCode 82. 删除排序链表中的重复元素 II(链表)

    1. 题目 给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字. 示例 1: 输入: 1->2->3->3->4->4->5 输出 ...

最新文章

  1. 什么是Python的var_dump()的Python等价物? [重复]
  2. Python的故事_two
  3. python utf8_肿么在Python里使用UTF-8编码
  4. 输入一字符串,统计其中有多少个单词(单词之间用空格分隔)(java)
  5. 享受梦幻技术盛宴,相约 Unite 2020
  6. ceph关闭同步之后的故障记录
  7. 计算机配件模拟,模拟计算机是指什么
  8. php redis 集群 长连接池,php如何实现redis连接池
  9. Web开发之django(二Admin)
  10. react随笔-1(为什么在react使用jq无法正确渲染组件位置)
  11. 在lua的string库和正则表达式
  12. 百度地图电子围栏功能的实现
  13. 常见的深度学习面试题及解答(一)
  14. 【IoT毕业设计】树莓派开发板+机智云IoT+监测机器人
  15. 利用scp 在linux之间传输文件
  16. Excel里面输入18位数字,但是显示却是其他的?!请问怎么解决?
  17. 如何把一个长链接缩短成一个短链接?
  18. 自定义CollapsingToolbaLayout完成可收缩的带头像的Toolbar
  19. python爬虫 下载视频网站视频
  20. 获取客户端mac地址 php,js获取客户端mac地址的方法

热门文章

  1. 【python】Flask视图
  2. Django-安装xadmin的方法及主要配置方法
  3. python中的常量是什么意思_第14p,Python中的常量与注释。
  4. 【数据库】一篇文章搞懂数据库隔离级别那些事(LBCC,MVCC)
  5. C语言的数组名和对数组名取地址
  6. php注入教程,php注入点构造代码实例详解
  7. 字符设备驱动基础篇4——字符设备驱动读写接口的操作实践
  8. 搭建golang webcron 定时任务管理平台
  9. python知识点1
  10. oracle 从别的数据库获取数据 ,访问其他数据库