成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Leetcode 1:兩數(shù)之和

Taste / 1533人閱讀

摘要:給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,請(qǐng)你在該數(shù)組中找出和為目標(biāo)值的那兩個(gè)整數(shù),并返回他們的數(shù)組下標(biāo)。示例給定因?yàn)樗苑祷胤椒?,暴力解法。函?shù)可以將一個(gè)數(shù)組轉(zhuǎn)化為一個(gè)從開(kāi)始,值為數(shù)組對(duì)應(yīng)元素的字典。

給定一個(gè)整數(shù)數(shù)組 nums 和一個(gè)目標(biāo)值 target,請(qǐng)你在該數(shù)組中找出和為目標(biāo)值的那 兩個(gè) 整數(shù),并返回他們的數(shù)組下標(biāo)。

你可以假設(shè)每種輸入只會(huì)對(duì)應(yīng)一個(gè)答案。但是,你不能重復(fù)利用這個(gè)數(shù)組中同樣的元素。

示例:

給定 nums = [2, 7, 11, 15], target = 9

因?yàn)?nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

方法1,暴力解法。

直接每一個(gè)元素都與自己之前的元素相加看是否有目標(biāo)值,有就輸出。

代碼如下:

class Solution:
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        n = len(nums)
        for i in range(n):
            for j in range(i):
                if nums[i] + nums[j] == target:
                    target_num = [i,j]
                    return target_num
        return None

?

時(shí)間消耗和空間消耗如下:

執(zhí)行用時(shí): 4500 ms, 在Two Sum的Python3提交中擊敗了32.72% 的用戶

內(nèi)存消耗: 7.3 MB, 在Two Sum的Python3提交中擊敗了85.58% 的用戶

方法2,使用enumerate函數(shù)

查看評(píng)論使用enumerate 函數(shù)效率更高。

enumerate函數(shù)可以將一個(gè)數(shù)組轉(zhuǎn)化為一個(gè)key從開(kāi)始,值為數(shù)組對(duì)應(yīng)元素的字典。

代碼如下:

class Solution:
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        if not nums:
            return None
            d = dict()
        for i,item in enumerate(nums):
            tmp = target – item
            if tmp in d:
                return [i, d[tmp]]
                d[item] = i
        return None

時(shí)間消耗和空間消耗如下:

執(zhí)行用時(shí): 44 ms, 在Two Sum的Python3提交中擊敗了99.77% 的用戶

內(nèi)存消耗: 7.9 MB, 在Two Sum的Python3提交中擊敗了46.97% 的用戶

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/45061.html

相關(guān)文章

  • LeetCode 167:兩數(shù)之和 II - 輸入有序數(shù)組 Two Sum II - Input a

    摘要:公眾號(hào)愛(ài)寫(xiě)給定一個(gè)已按照升序排列的有序數(shù)組,找到兩個(gè)數(shù)使得它們相加之和等于目標(biāo)數(shù)。函數(shù)應(yīng)該返回這兩個(gè)下標(biāo)值和,其中必須小于。示例輸入輸出解釋與之和等于目標(biāo)數(shù)。 公眾號(hào): 愛(ài)寫(xiě)bug(ID:icodebugs) 給定一個(gè)已按照升序排列 的有序數(shù)組,找到兩個(gè)數(shù)使得它們相加之和等于目標(biāo)數(shù)。 函數(shù)應(yīng)該返回這兩個(gè)下標(biāo)值 index1 和 index2,其中 index1 必須小于 index2。...

    張春雷 評(píng)論0 收藏0
  • LeetCode 167:兩數(shù)之和 II - 輸入有序數(shù)組 Two Sum II - Input a

    摘要:公眾號(hào)愛(ài)寫(xiě)給定一個(gè)已按照升序排列的有序數(shù)組,找到兩個(gè)數(shù)使得它們相加之和等于目標(biāo)數(shù)。函數(shù)應(yīng)該返回這兩個(gè)下標(biāo)值和,其中必須小于。示例輸入輸出解釋與之和等于目標(biāo)數(shù)。 公眾號(hào): 愛(ài)寫(xiě)bug(ID:icodebugs) 給定一個(gè)已按照升序排列 的有序數(shù)組,找到兩個(gè)數(shù)使得它們相加之和等于目標(biāo)數(shù)。 函數(shù)應(yīng)該返回這兩個(gè)下標(biāo)值 index1 和 index2,其中 index1 必須小于 index2。...

    Me_Kun 評(píng)論0 收藏0
  • LeetCode.1 兩數(shù)之和(Two Sum)(JS)

    摘要:開(kāi)坑,以后每周刷一兩道一題目?jī)蓴?shù)之和給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,請(qǐng)你在該數(shù)組中找出和為目標(biāo)值的那兩個(gè)整數(shù),并返回他們的數(shù)組下標(biāo)。但是,你不能重復(fù)利用這個(gè)數(shù)組中同樣的元素。 開(kāi)坑,以后每周刷一兩道LeetCode 一、題目 兩數(shù)之和: 給定一個(gè)整數(shù)數(shù)組 nums 和一個(gè)目標(biāo)值 target,請(qǐng)你在該數(shù)組中找出和為目標(biāo)值的那 兩個(gè) 整數(shù),并返回他們的數(shù)組下標(biāo)。你可以假設(shè)每種輸入只會(huì)對(duì)應(yīng)...

    Gu_Yan 評(píng)論0 收藏0
  • 【前端來(lái)刷LeetCode兩數(shù)之和兩數(shù)相加

    摘要:給定表,存在函數(shù),對(duì)任意給定的關(guān)鍵字值,代入函數(shù)后若能得到包含該關(guān)鍵字的記錄在表中的地址,則稱表為哈希表,函數(shù)為哈希函數(shù)。而中的對(duì)象就是基于哈希表結(jié)構(gòu),所以我們構(gòu)造一個(gè)對(duì)象即可,是當(dāng)前遍歷到的值,是其與目標(biāo)值的差。 大部分玩前端的小伙伴,在算法上都相對(duì)要薄弱些,畢竟調(diào)樣式、調(diào)兼容就夠掉頭發(fā)的了,哪還有多余的頭發(fā)再去折騰。 確實(shí)在前端中需要使用到算法的地方是比較少,但若要往高級(jí)方向發(fā)展,...

    BLUE 評(píng)論0 收藏0
  • LeetCode1.兩數(shù)之和JavaScript

    摘要:兩數(shù)之和給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。你可以假設(shè)每個(gè)輸入只對(duì)應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。實(shí)例給定因?yàn)樗苑祷卮鸢竻⒖紙?zhí)行 LeetCode1.兩數(shù)之和JavaScript 給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。你可以假設(shè)每個(gè)輸入只對(duì)應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。實(shí)例: 給定 nums = [2, 7, 11, 1...

    Scliang 評(píng)論0 收藏0
  • LeetCode】數(shù)組初級(jí)算法-兩數(shù)之和

    摘要:題目描述兩數(shù)之和給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。你可以假設(shè)每個(gè)輸入只對(duì)應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。示例給定因?yàn)樗苑祷厮悸冯p重循環(huán),遍歷數(shù)組實(shí)現(xiàn) 題目描述 兩數(shù)之和給定一個(gè)整數(shù)數(shù)組和一個(gè)目標(biāo)值,找出數(shù)組中和為目標(biāo)值的兩個(gè)數(shù)。 你可以假設(shè)每個(gè)輸入只對(duì)應(yīng)一種答案,且同樣的元素不能被重復(fù)利用。 示例: 給定 nums = [2, 7, 11, 15],...

    chaos_G 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<