问题:Given an array of integers, return indices of the two numbers such that they add up to a specific target.
You may assume that each input would have exactly one solution, and you may not use the same element twice.
在一个数列中,如果两个数的和与给定值相同,则返回这两个数的下标。
分析与总结:
思路:
输入为list,输出为两个数的下标。为了得到这两个数,需要写一个双重循环,但可能运算时间过长,所以必须建立一个新的list以降低On。等在新的list里找到这两个数字之后,在回到最开始的list里,找到这两个数的下标。
1.一开始想着要降低运算时间,所以建立了一个新的list,并只添加进去比target小的数字。结果出现了错误,如下:
因为list里可能出现负数,所以无法将比target小的数字全部舍弃。
因此若想降低On,只能将list排序。
2.新建一个new-list,为原先list排序后的样子
需要注意:只有最后result的长度为2,即找到了两个数的下标时,才可结束循环。
网友评论