LeetCode-1.两数之和

Author Avatar
xffish 3月 11, 2018
  • 在其它设备中阅读本文章

LeetCode-1.两数之和

中文:

给定一个整数数列,找出其中和为特定值的那两个数。

你可以假设每个输入都只会有一种答案,同样的元素不能被重用。

示例:

给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
英文:
Two Sum
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.

Example:

Given nums = [2, 7, 11, 15], target = 9,
Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].
以下是我的解答(参考了网上的答案)

class Solution:
def twoSum(self, nums, target):
numsMap = {}
for i,num in enumerate(nums):
if num not in numsMap:
numsMap[target - num] = i #写target-num而不是num可以保证结果是第一个下标小于第二个下标
else:
return [numsMap[num],i]

This blog is under a 知识共享许可协议
本作品采用知识共享署名 4.0 国际许可协议进行许可

本文链接:https://www.xffish.xyz/2018/03/11/Leetcode-1 两数之和/