困难的题太难


看到难度困难心里一紧, 写了半天也只能写出时间复杂度O(n) + 空间复杂度O(n)的:

思路:
最小的正整数 result 是1。
遍历数组时,查询当前的数是否等于 result:
1)如果等于,则递增 result,然后在另一个 HashSet "篮子"中查询是否存在该数。如果存在,就再次递增 result ,直到篮子中不存在 result 为止。
2)如果不等于,将该数放入 HashSet 篮子中,以用来作后续的检查。
由于哈希表中的查询时间复杂度是O(1),所以总体时间复杂度为O(n)。另外由于创建了一个哈希表,空间复杂度为O(n)。

实在想不出,心想这能不要比较写出空间复杂度O(1)的吗?
答案看了半天,人才啊!等到理出代码头又开始疼了

还没人赞这篇日记