题目
解答
有一处需要注意,我使用注释部分进行交换值,报错:超出时间限制。有人知道是为什么吗?难道是先给nums[i]赋值后,从而改变了后一项的索引?
class Solution(object):def firstMissingPositive(self, nums):""":type nums: List[int]:rtype: int"""len_nums = len(nums)for i in range(len_nums):while 1 <= nums[i] <= len_nums and nums[i] != nums[nums[i]-1]:# nums[i], nums[nums[i]-1] = nums[nums[i]-1], nums[i]nums[nums[i] - 1], nums[i] = nums[i], nums[nums[i] - 1]for i in range(len_nums):if nums[i] != i + 1:return i+1return len_nums+1