1.两数之和
给定一个整数组nums和一个目标target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。 示例 : 给定nums = [2,7,11,15],target=9,因为nums[]+nums[]=2+7=9,所以返回[0,1] 在这里我给出我的python的方法和代码。 方法一 : 暴力破解 对于这个问题我第一想法,遍历数组得到数组的值和他的下标,分别为( i,value),然后从nums的j = i+1遍历数组,进行判断是否存在等于y = target - value的元素 def twoSum ( sums , target ) : length = len ( nums ) #获取数组的长度 for i , x in enumerate ( nums ) : #i是数组的下标,value是数组的元素 y = target - x j = x + 1 #为了避免重复,我们从第i+1项开始 while j < length : if ( nums [ j ] == y ) : return [ i , j ] #如果存在则返回对应元素的下标 j += 1 方法二 : 哈希表 暴力破解的随说简单,但时间复杂度为O(n*n),所以我们考虑用神办法能够降低时间复杂度,所以考虑用哈希表来解决问题