map:最小未出现数字

考点:哈希表

  • 使用计数数组版本
使用数组B标识,下标为自然数,数值为是否在数组A出现
  • bit map
# -*- coding:utf-8 -*-
import sys

def test_func(input_list):
    bit_list = [0 for num in range(len(input_list))]

    for i in input_list:
        if i > 0:
            bit_list[i - 1] = 1

    print bit_list

    for index, i in enumerate(bit_list):
        if i == 0:
            return index + 1

    return -1

if __name__ == '__main__':
    # 时间复杂度: N, 空间复杂度:1
    # 输入形式: [-5,1,2,4]
    input_str = input("input: ")
    print test_func(list(input_str))
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容