[leetcode]两数之和
题目描述:
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。
你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。
示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
题目分析:
两数之和target已知,所有元素也知道,可以转换为根据一元素来查找另一个元素。
class Solution():
def two_sum(self, nums, target):
"""
:type nums: List[int]
:type target: int
:rtype: List[int]
"""
n = len(nums)
for i in range(n):
target_num = target - nums[i]
if target_num in nums:
j = nums.index(target_num)
if i == j:
continue
else:
return i, j
break