leetcode 每日一题 905. 按奇偶排序数组


leetcode 每日一题 905. 按奇偶排序数组


class Solution {
  public int[] sortArrayByParity(int[] nums) {
      int i = 0;
      int j = nums.length - 1;
      while (i < j) {
          while (nums[i] % 2 == 0 && i < j){
              i++;
          }
          while (nums[j] % 2 != 0 && i < j){
              j--;
          }
          if(i >= j){
              return nums;
          }
          reverse(nums, i, j);
          i++;
          j--;
      }
      return nums;
  }

  private void reverse(int[] nums, int i, int j) {
      int x = nums[i];
      nums[i] = nums[j];
      nums[j] = x;
  }
}

 

 

posted @ 2022-04-28 09:30  java架构师1  阅读(19)  评论(0)    收藏  举报