百度搜索 编程之战 天涯 编程之战 天涯在线书库 即可找到本书最新章节.

    答案是肯定的。

    有一种方法,需要借助位图(bitmap)来实现。

    位图是一种简单但是非常有用的数据结构。

    你可以用一个数组来表示它,数组元素为0或者1,0代表不存在,1代表存在。

    首先,遍历列表,将里面的元素加入位图中,这是一趟线性操作。

    接着,从1遍历到100,依次判断当前数字是否存在于位图中。

    如果不存在,那就是缺失的编号,直接返回。

    这种方式需要同等大小的额外空间,但时间复杂度是很接近线性的。

    其实这里也可以使用哈希表,而不使用位图。

    但是,哈希表有额外的性能损耗,还是采用更简单的数据结构为好。

    想到这里,杨成已经有了三种方法。

    但是他有一个疑问:

    有没有不需要借助额外内存空间,时间复杂度也能为线性的方法呢?

百度搜索 编程之战 天涯 编程之战 天涯在线书库 即可找到本书最新章节.

章节目录

编程之战所有内容均来自互联网,天涯在线书库只为原作者程序小猿的小说进行宣传。欢迎各位书友支持程序小猿并收藏编程之战最新章节