给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。
示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
解题思路:
1、直接用两个循环遍历两次,第一层循环的长度为n,第二层循环的长度为i+1~n
2字典法:
定义一个空字典;定位需要寻找的值、填充字典、字典中查找数、返回索引。
3、哈希表(差值法)
判断差值是否在列表里;通过差值定位第二个值;判断第二个值是否在nums里,将索引赋值给j,当第一个值得索引i与第二个值得索引j不相同时(判断是否为同一个数),返回两个值的索引。