题解 | #最长无重复子数组#
最长无重复子数组
http://www.nowcoder.com/practice/b56799ebfd684fb394bd315e89324fb4
双指针算法 + 哈希表
核心思想:计算满足无重复子数组的 j 离 i 最远能离多远,i 在前 j 在后
哈希表用于存储元素和区间子数组 [j, i] 之间的出现次数
- 先将 nums[i] 存入哈希表
- while 判断如果哈希表中 nums[i] 出现的次数是大于 1,则 j 指针往后移同时 nums[j] 出现的次数减 1(因为 nums[i] 可能是 [j, i - 1] 之间的数)
- 更新答案