Wednesday 29 September 2021

Sort Array By Parity II - LeetCode

 Given an array of integers nums, half of the integers in nums are odd, and the other half are even.

Sort the array so that whenever nums[i] is odd, i is odd, and whenever nums[i] is even, i is even.

Return any answer array that satisfies this condition.

 

Example 1:

Input: nums = [4,2,5,7]
Output: [4,5,2,7]
Explanation: [4,7,2,5], [2,5,4,7], [2,7,4,5] would also have been accepted.

Example 2:

Input: nums = [2,3]
Output: [2,3]

 

Constraints:

  • 2 <= nums.length <= 2 * 104
  • nums.length is even.
  • Half of the integers in nums are even.
  • 0 <= nums[i] <= 1000
Solution(Only function):

class Solution {
    public int[] sortArrayByParityII(int[] nums) {
        
        int i=0;
        int j=1;
    while(i<nums.length && j<nums.length){    
        while(i<nums.length)
        {
            if(nums[i]%2!=0)
                break;
            
            i+=2;
        }
        while(j<nums.length)
        {
            if(nums[j]%2==0)
                break;
            
            j+=2;
        }
       
      if(i<nums.length && j<nums.length){  
        int temp=nums[i];
        nums[i]=nums[j];
        nums[j]=temp;
        }
    }    
    return nums;    
    }       
}

No comments:

Post a Comment

Random password generator in Java

       Random password generator in Java Source code: mport java.io.*; import java.util.*; public class Main { public static void main(Str...