Advertisement
Guest User

Untitled

a guest
Jul 21st, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /**
  2.  * @param {number[]} nums
  3.  * @return {number}
  4.  */
  5. var firstMissingPositive = function(nums) {
  6.     for (let i = 0; i < nums.length; ++i) {
  7.         let num = nums[i];
  8.  
  9.         if (num !== i + 1 && num > 0 && num <= nums.length) {
  10.             nums[i] = nums[num - 1];
  11.             nums[num - 1] = num;
  12.         }
  13.  
  14.         num = nums[i];
  15.  
  16.         if (num !== i + 1 && num > 0 && num <= nums.length && num !== nums[num - 1]) {
  17.             --i;
  18.         }
  19.     }
  20.  
  21.     for (let i = 0; i < nums.length; ++i) {
  22.         if (nums[i] !== i + 1) {
  23.             return i + 1;
  24.         }
  25.     }
  26.  
  27.     return nums.length + 1;
  28. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement