美文网首页
Codility 4.4 MissingInteger

Codility 4.4 MissingInteger

作者: 波洛的汽车电子世界 | 来源:发表于2019-08-04 22:01 被阅读0次
This is a demo task.

Write a function:

def solution(A)

that, given an array A of N integers, returns the smallest positive integer (greater than 0) that does not occur in A.

For example, given A = [1, 3, 6, 4, 1, 2], the function should return 5.

Given A = [1, 2, 3], the function should return 4.

Given A = [−1, −3], the function should return 1.

Write an efficient algorithm for the following assumptions:

N is an integer within the range [1..100,000];
each element of array A is an integer within the range [−1,000,000..1,000,000].

这里只考虑前N+1个数,因为缺失的值肯定小于等于N+1。注意不要先用sort(),时间复杂度会增加啊~

def solution(A):
    # write your code in Python 3.6

    l = [0]*(len(A)+1)
    for i in A:
        if 1<=i<=len(A)+1:
            l[i-1] =1
    for i in range(len(A)+1):
        if l[i]==0:
            return i+1

相关文章

网友评论

      本文标题:Codility 4.4 MissingInteger

      本文链接:https://www.haomeiwen.com/subject/eyludctx.html