1. Two Sum-Python-LeetCode

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].

First

目標和為target、num為遍歷數(shù)組每個位置的值,index為數(shù)組的索引
將遍歷過的數(shù)字所對應(yīng)的index緩存在字典中,如果目標target-num出現(xiàn)在字典中。
則將字典中的索引和當前值的索引組成答案返回。

代碼時間復(fù)雜度為O(n)

class Solution(object):
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        location = {}
        for index, num in enumerate(nums):
            if target - num in location:
                return [location[target-num], index]
            location[num] = index
        return [-1, -1]

Fastest

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容