First Missing Positive

 class Solution {
    public int firstMissingPositive(int[] nums) {
        for(int i=0;i<nums.length;i++){
            int correctPos=nums[i]-1;
            while(((1<=nums[i])&&(nums[i]<=nums.length))&&nums[i]!=nums[correctPos])
            {
                int t=nums[i];
                nums[i]=nums[correctPos];
                nums[correctPos]=t;
                correctPos=nums[i]-1;
            }
        }
        for(int i=0;i<nums.length;i++){
          if(i+1!=nums[i]){
              return i+1;
          }
        }
        return nums.length+1;
        
    }
}

Comments

Popular posts from this blog

BYTE STUFFING PROGRAM USING C

Rotate a matrix 270 degree AntiClockWise

Finding the length of connected cells of 1's (regions) in an matrix of 1's and 0's