lintcode(507)摆动排序 II
描述:
给你一个数组nums
,将它重排列如下形式
nums[0] < nums[1] > nums[2] < nums[3]....
注意事项
你可以认为每个输入都有合法解
样例:
给出 nums = [1, 5, 1, 1, 6, 4]
,一种方案为 [1, 4, 1, 5, 1, 6]
.
给出 nums = [1, 3, 2, 2, 3, 1]
,一种方案为 [2, 3, 1, 3, 1, 2]
.
思路:
复制数组并排序,按照降序依次插入到nums中
采用降序的目的在于讲sort后的数组,排列在中间位置的,也就是值比较接近的,分别放置在数组两边,以此来避免相等的情况出现
public class Solution {/*** @param nums a list of integer* @return void*/public void wiggleSort(int[] nums) {// Write your code hereint[] temp = nums.clone();Arrays.sort(temp);for(int i = (nu ms.length - 1)/2 , j = 0 ; i>=0;i-- , j += 2){nums[j] = temp[i];}for(int i = nums.length -1, j = 1;i>(nums.length - 1)/2;i-- , j+=2){nums[j] = temp[i];}}
}
lintcode(507)摆动排序 II相关推荐
- 【leetcode】324.摆动排序 II (四种解法,快速排序+3way-partition等,java实现)
324. 摆动排序 II 难度中等 给定一个无序的数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序. 示例 1 ...
- [Swift]LeetCode324. 摆动排序 II | Wiggle Sort II
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ ➤微信公众号:山青咏芝(shanqingyongzhi) ➤博客园地址:山青咏芝(https://www.cnblog ...
- 324. Wiggle Sort II | 324. 摆动排序 II(降序穿插)
题目 https://leetcode.com/problems/wiggle-sort-ii/submissions/ 题解 没有一次想到正确的方法,是在 WA 的测试用例的提示下,一点一点修正,才 ...
- LeetCode 280. 摆动排序
文章目录 1. 题目 2. 解题 1. 题目 给你一个无序的数组 nums, 将该数字 原地 重排后使得 nums[0] <= nums[1] >= nums[2] <= nums[ ...
- C++Wiggle Sort摆动排序的实现算法(附完整源码)
C++Wiggle Sort摆动排序的实现算法 C++Wiggle Sort摆动排序的实现算法完整源码(定义,实现,main函数测试) C++Wiggle Sort摆动排序的实现算法完整源码(定义,实 ...
- LintCode 6.合并排序数组 ||
import org.junit.Test;import java.util.Arrays;public class MergeSort {/*** @param A: sorted integer ...
- 摆动排序leetcode324
给你一个整数数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序. 你可以假设所有输入数组都可以得到满足题目要求的 ...
- [Lintcode]115. Unique Paths II/[Leetcode]63. Unique Paths II
115. Unique Paths II/63. Unique Paths II 本题难度: Easy/Medium Topic: Dynamic Programming Description Fo ...
- ACM练习 链表排序 II 【WA】
注意:在OJ上提交时不要使用endl,可能会出问题.用\n代替. 描述 已知 小 g 手里有一个链表. 小 g 希望手里的链表是按照单调非减的顺序排好的. 小 g 希望链表中值相同的节点在排完序后相对 ...
- lintcode:合并排序数组
题目: 合并排序数组 合并两个排序的整数数组A和B变成一个新的数组. 样例 给出A=[1,2,3,4],B=[2,4,5,6],返回 [1,2,2,3,4,4,5,6] 挑战 你能否优化你的算法,如果 ...
最新文章
- ffmpeg3.4 yuv编码为h264
- Linux学习之系统编程篇:条件变量(pthread_cond_init / wait / signal / broadcast / destroy)
- Java黑皮书课后题第3章:*3.5(给出将来的日期)编写一个程序,提示用户输入代表今天日期的数字(周日0周一1周二2)同时用户输入一个今天之后的天数代表将来某天的数字,然后显示这天是周几
- 48session的生命周期
- weblogic linux sun/awt/X11GraphicsEnvironment
- Spring MVC学习总结(1)——Spring MVC单元测试
- 芬兰称议员的邮件账户遭黑客访问
- Redis 数据结构之dict(2)
- 迷信一把:三才数理吉凶
- 树莓派人脸表情识别中期报告
- Pandas 报错:index must be monotonic increasing or decreasing
- 【渝粤教育】 国家开放大学2020年春季 1332中文学科论文写作 参考试题
- pixi的使用之创建和操作精灵
- vue3怎么引入高德地图
- Cell Biolabs丨艾美捷Arf1激活检测试剂盒
- StringUtil工具类
- Learning to See in the Dark阅读札记
- 基于.NET平台的MapX开发
- 换位思考——寝室作息
- Chrome调试工具
热门文章
- 基金与私募基金概念解析:共同基金、单位信托、投资信托计划、券商集合理财、基金专户理财
- 中国科学院计算机所刘夏真,中国科学院大学2015年博士生录取名单公示(55)
- 微信小程序请求接口提示Provisional headers are shown
- Linux学习第一节课
- Mathtype部分符号打不上去或部分符号点击后停止工作
- 谷歌浏览器应用翻译插件,
- python三角函数公式计算_使用Python三角函数公式计算三角形的夹角案例
- python中三角函数运算符_Python入门之三角函数sin()函数实例详解
- 关于:WindowsOffice 产品语言包
- USACO 土地购买