题解 | #数组# #缺失的第一个正整数#
缺失的第一个正整数
https://www.nowcoder.com/practice/50ec6a5b0e4e45348544348278cdcee5
#coding:utf-8
#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param nums int整型一维数组
# @return int整型
#
class Solution:
def minNumberDisappeared(self , nums ):
# write code here
#思路:
##1、维护一个数组, [0, 1, 2, ..., n]
##2、如果数k出现,就给数组的[k] 标记为1,然后找没有被置1的那个数。
##如果全部出现就是n + 1没出现
##init
n = len(nums)
flag_arr = [0 for i in range(0, n + 1)]
print ("Flag arr len: ", len(flag_arr))
##process
for i in range(0, n):
cur_val = nums[i]
if cur_val > 0 and cur_val <= n:
flag_arr[cur_val] = 1
print ("Flag arr: ", flag_arr)
target = n + 1
for i in range(1, n + 1):
if flag_arr[i] != 1:
target = i
break
return target
顺丰集团工作强度 428人发布
