两数之和
难度:简单
描述:
给一个整数数组,找到两个数使得他们的和等于一个给定的数 target。
你需要实现的函数 twoSum 需要返回这两个数的下标, 并且第一个下标小于第二个下标。注意这里下标的范围是 0 到 n-1。
样例:
给出 numbers = [2, 7, 11, 15], target = 9, 返回 [0, 1].
给出 numbers = [2, 33, 11, 2], target = 4, 返回 [0, 3].
思路分析:
target
减去每个元素的值,得出来的值,就是我们要搜索的值。
代码模板:
1 | /** |
想一想再看答案
想一想再看答案
想一想再看答案
代码:
- 转成对象:
这是别人的一种解法,比下面的解法复杂点,可以看看,扩展一下思路。
1 | /** |
- 双循环
1 | const twoSum = function(numbers, target) { |
- indexOf()
indexOf
的第二个参数是开始搜索的位置,也可以跳过前面已经搜索过的值。
1 | const twoSum = function(numbers, target) { |
鼓励我一下:
觉得还不错的话,给我的点个star吧