概述
具体思想:
人傻了,没想到还真是这样做的;
波峰波谷直接判断,不满足直接交换i位和i-1位就可以;
具体代码:
class Solution {
public:
void wiggleSort(vector<int>& nums) {
if(nums.size()<2)
return;
if(nums[0]>nums[1])
swap(nums[0],nums[1]);
if(nums.size()==2){
return;
}
bool flag=true;//true 小位,false 大位;
for(int i=2;i<nums.size();i++){
if(flag){
flag=!flag;
//当前是低谷;
if(nums[i]<=nums[i-1])
continue;
swap(nums[i], nums[i-1]);
}else{
flag=!flag;
//当前事高峰;
if(nums[i]>=nums[i-1])
continue;
swap(nums[i], nums[i-1]);
}
}
}
};
/*
3
3 5
3 5 2
3 5 2 1/3 5 1 2
3 5 1 2 6/3 5 1 6 2
3 5 1 6 2 4
*/
最后
以上就是细心项链为你收集整理的LeetCode 280. 摆动排序具体思想:具体代码:的全部内容,希望文章能够帮你解决LeetCode 280. 摆动排序具体思想:具体代码:所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复