First Missing Positive【hard】

参考视频:https://www.youtube.com/watch?v=8DqewGsVNkI

解决法:【其实还不错】

设置一个boolean array, 每一个数对应一个position。 遍历一遍,如果碰到数的话就把boolean 里的position变成True。

然后再iterate boolean array一次,把第一个False的position+1返回。

负数在这里我们会无视,因为没有position是负数。

这边有一个问题他没讲到。 假设[1, 1000] 我们要return的是2.这里要加一个条件,如果数大于了array size的话,这个数之前肯定有东西miss。所以这个数跟负数一样也不考虑。


Better:


这个思路其实有一点绕,我2月的时候也是做过这题。但是由于思路太绕经常过几天就忘了


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,769评论 0 33
  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,145评论 6 13
  • 数组是一种可变的、可索引的数据集合。在Scala中用Array[T]的形式来表示Java中的数组形式 T[]。 v...
    时待吾阅读 967评论 0 0
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,270评论 0 4
  • 种菜屋顶上,务农本未忘。 自种自收获,淡泊心舒畅。 ——素生 2016年12月10日
    杨共同学阅读 207评论 0 1