一、题目
二、解题
1)题意:
找出列表中任意两数的和等于给定值的两数下标。
2)关键点
进行循环时候,跳出条件是两个数的值加起来等于target,并且两个值的index不同。
三、尝试与结果
1)使用最基础的两重循环
class Solution(object):
def twoSum(self, nums, target):
length = len(nums)
result = []
for i in range(0,length):
for j in range(i,length):
tSum = nums[i] + nums[j]
if tSum == target and i != j:
result.append(i)
result.append(j)
return result
2)使用一重循环,用target减去第一个值,判断第二个值是否在列表中(注意也要判断index是否相同)
class Solution(object):
def twoSum(self, nums, target):
result = []
for i in range(0,len(nums)):
oneNum = nums[i]
twoNum = target - oneNum
if twoNum in nums:
j = nums.index(twoNum)
if i != j:
result.append(i)
result.append(j)
return result
结果:AC