给定一个整数数组,返回两个数字的索引,使它们加起来成为一个特定的目标。
如果存在着一对解m, n,设m在序列中排在n的前面。我们从头到尾遍历该序列,用数据结构S存储已经遍历过的数据。
遍历到m时候,寻找target-m是否在S中,这时候还是不在。但是遍历到n的时候就发现target-n,也就是m,在S中,
这时候我们就得到了解。该方法的时间复杂度为O(n),但是可能需要额外O(n)的存储空间。而数据结构要很方便于查询,
所以使用了字典(C++中用map,Python中用dict,存储数据以及下标),查询复杂度为O(1)。
注意点:
对于python的字典 x in d,d指的是字典的键而不是值,所以存储的时候键为m的值,值为m对应的标号。