First Missing Positive

来源:互联网 发布:java数据库编程题型 编辑:程序博客网 时间:2024/05/22 01:48

太有才了,将值做索引用,把每个数放到对应的位置上。

def firstMissingPositive_1(self, nums):    n=len(nums)        for i in xrange(n):            while nums[i]>0 and nums[i]<n+1 and nums[i]!=i+1 and nums[nums[i]-1]!=nums[i]:                nums[nums[i]-1],nums[i]=nums[i],nums[nums[i]-1]        miss=1        for x in nums:            if x!=miss:                return miss            miss+=1        return miss
0 0