迭代可以通过,递归不能通过
#coding:utf-8
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param nums int整型一维数组
# @return int整型
#
class Solution:
def minNumberDisappeared(self , nums ):
# write code here
if not nums:
return 1
for i in range(len(nums)):
# if nums[i]<=0 or nums[i]==i+1 or nums[i]>len(nums):
# continue
# self.local_sort(nums,i)
while nums[i]>0 and nums[i]!=i+1 and nums[i]<=len(nums):
target_index = nums[i]-1
nums[i],nums[target_index] = nums[target_index],nums[i]
for i in range(len(nums)):
if nums[i]!=i+1:
return i+1
return len(nums)+1
# def local_sort(self,nums,i):
# print(i,nums,nums[i])
# target_index = nums[i]-1
# if target_index<0 or target_index>=len(nums) or nums[target_index]==nums[i]:
# return
# nums[i],nums[target_index] = nums[target_index],nums[i]
# self.local_sort(nums, i)