LeetCode Wiggle Sort
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode Wiggle Sort相关的知识,希望对你有一定的参考价值。
原题链接在这里:https://leetcode.com/problems/wiggle-sort/
当 i 是奇数时,若nums[i] < nums[i-1], 互换。
当 i 是偶数时,若nums[i] > nums[i-1], 互换。
Time Complexity: O(n). Space: O(1).
AC Java:
1 public class Solution { 2 public void wiggleSort(int[] nums) { 3 if(nums == null || nums.length == 0){ 4 return; 5 } 6 for(int i = 1; i<nums.length; i++){ 7 if(i%2 == 1){ 8 if(nums[i] < nums[i-1]){ 9 swap(nums, i-1, i); 10 } 11 }else{ 12 if(nums[i] > nums[i-1]){ 13 swap(nums, i-1, i); 14 } 15 } 16 } 17 } 18 private void swap(int [] nums, int i, int j){ 19 int temp = nums[i]; 20 nums[i] = nums[j]; 21 nums[j] = temp; 22 } 23 }
以上是关于LeetCode Wiggle Sort的主要内容,如果未能解决你的问题,请参考以下文章