LeetCode 题解:1. 两数之和,Map+ 队列 + 双指针,JavaScript,详细注释
原题链接:https://leetcode-cn.com/problems/two-sum/
解题思路:
使用Map缓存当前数组的值对应的index,需要注意的是,数组的值有可能相同。也就是说同一个值可能对应多个index,因此选择用队列存储index。再将队列存储在Map中。
将数组排序,使双指针能够根据计算结果选择方向推进。
用双指针向中间推进,如果遇到两数字和等于target,则根据当前的值从队列中取出index,并返回结果。
版权声明: 本文为 InfoQ 作者【Lee Chen】的原创文章。
原文链接:【http://xie.infoq.cn/article/6d87579d8eefdf541dace9199】。文章转载请联系作者。
评论