LeetCode兩數之和(Python)
阿新 • • 發佈:2018-11-04
LeetCode 兩數之和(Python)
題目:給定一個整數陣列和一個目標值,找出陣列中和為目標值的兩個數。
你可以假設每個輸入只對應一種答案,且同樣的元素不能被重複利用。
示例
給定 nums = [2, 7, 11, 15], target = 9
因為 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
class Solution(object): # 兩數之和
def twoSum(self, nums, target):
"""
:type nums: List[int]
: type target: int
:rtype: List[int]
"""
#給定 nums = [2, 7, 11, 15], target = 9
#因為 nums[0] + nums[1] = 2 + 7 = 9
#所以返回 [0, 1]
for i in range(0,len(nums)-1):
for j in range(i+1,len(nums)):
if nums[i] + nums[j] == target:
return [i,j]
但是
此題的時間複雜度是O(n²)
不太好
雜湊表簡單,空間換時間