parameters: (self, nums)
return_statement: return len(nums) + 1
docstring: :type nums: List[int]
          :rtype: int
docstring_summary: :type nums: List[int]
          :rtype: int
docstring_tokens: : type nums : List [ int ] : rtype : int
function: def firstMissingPositive(self, nums):
          """
          :type nums: List[int]
          :rtype: int
          """
          i = 0
          while i < len(nums):
              j = nums[i] - 1
              if 0 <= j < len(nums) and nums[i] != nums[j]:
                  nums[i], nums[j] = nums[j], nums[i]
              else: 
                  i += 1
          
          for i in range(len(nums)):
              if i != nums[i] - 1:
                  return i + 1
              
          return len(nums) + 1
function_tokens: def firstMissingPositive ( self , nums ) : i = 0 while i < len ( nums ) : j = nums [ i ] - 1 if 0 <= j < len ( nums ) and nums [ i ] != nums [ j ] : nums [ i ] , nums [ j ] = nums [ j ] , nums [ i ] else : i += 1 for i in range ( len ( nums ) ) : if i != nums [ i ] - 1 : return i + 1 return len ( nums ) + 1