亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

LeetCode—Python—349. 兩個(gè)數(shù)組的交集 + 350. 兩個(gè)

系統(tǒng) 2115 0

349. 兩個(gè)數(shù)組的交集

1.1題目描述

https://leetcode-cn.com/problems/intersection-of-two-arrays

給定兩個(gè)數(shù)組,編寫一個(gè)函數(shù)來計(jì)算它們的交集。

示例 1:

輸入: nums1 = [1,2,2,1], nums2 = [2,2]
輸出: [2]
示例 2:

輸入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
輸出: [9,4]

說明:

  • 輸出結(jié)果中的每個(gè)元素一定是唯一的。
  • 我們可以不考慮輸出結(jié)果的順序。

1.2代碼詳解

使用set集合

            
              class Solution:
    def intersection(self, nums1: List[int], nums2: List[int]) -> List[int]:
        set1 = set(nums1)
        set2 = set(nums2)
        
        if len(set1) < len(set2):
            return self.set_insert(set1,set2)
        else:
            return self.set_insert(set2,set1)
    
    def set_insert(self, set1, set2):
        return [x for x in set1 if x in set2]
            
          

?

350. 兩個(gè)數(shù)組的交集 II

2.1題目描述

https://leetcode-cn.com/problems/intersection-of-two-arrays-ii/

給定兩個(gè)數(shù)組,編寫一個(gè)函數(shù)來計(jì)算它們的交集。

示例 1:

輸入: nums1 = [1,2,2,1], nums2 = [2,2]
輸出: [2,2]


示例 2:

輸入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
輸出: [4,9]


說明:

輸出結(jié)果中每個(gè)元素出現(xiàn)的次數(shù),應(yīng)與元素在兩個(gè)數(shù)組中出現(xiàn)的次數(shù)一致。
我們可以不考慮輸出結(jié)果的順序。

進(jìn)階:

  • 如果給定的數(shù)組已經(jīng)排好序呢?你將如何優(yōu)化你的算法?
  • 如果?nums1?的大小比?nums2?小很多,哪種方法更優(yōu)?
  • 如果?nums2?的元素存儲(chǔ)在磁盤上,磁盤內(nèi)存是有限的,并且你不能一次加載所有的元素到內(nèi)存中,你該怎么辦?

2.2代碼詳解

            
              class Solution:
    def intersect(self, nums1: List[int], nums2: List[int]) -> List[int]:
        counts = {} # key:元素 ,value:出現(xiàn)頻次
        res = []

        for num in nums1:
            counts[num] = counts.get(num, 0) + 1 # 記錄nums1 中每個(gè)數(shù)出現(xiàn)的頻次
        # 遍歷nums2
        for num in nums2:
            # counts[num] > 0 表示nums2 中有nums1 相同的元素
            if num in counts and counts[num] > 0:
                res.append(num)
                counts[num] -= 1 # 查找到對(duì)應(yīng)后的元素失效

        return res
            
          

錯(cuò)誤案例:

LeetCode—Python—349. 兩個(gè)數(shù)組的交集 + 350. 兩個(gè)數(shù)組的交集 II_第1張圖片

原因:如測(cè)試用例中的 [5] ,字典中沒有這個(gè)值


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 偷自拍视频区综合视频区 | 欧美在线视频一区二区三区 | 非洲一级毛片 | 精品国产高清a毛片无毒不卡 | 国产小视频在线观看免费 | 四虎影视永久地址www成人 | 亚洲综合视频在线观看 | 婷婷综合亚洲 | 九九九九九九精品免费 | 99久久精品免费观看国产 | 亚洲精品一区二区久久 | 日本综合在线观看 | chinese国产在线视频 | 日本一级在线观看视频播放 | 毛片免费观看的视频 | 逼毛片 | 日本一级毛一级毛片短视频 | 亚洲欧美日韩在线不卡 | 手机看片日韩日韩 | 成人日韩| 欧美色综合久久 | 日本久久色 | 亚洲国产成人精品区 | 国产精品成人不卡在线观看 | 国产精品久久久久久爽爽爽 | 欧美日韩不卡码一区二区三区 | 久久天天躁狠狠躁夜夜躁 | 日日碰日日操 | 亚洲毛片免费观看 | 国产女人又爽又大 | 国产视频久久久久 | 日韩欧美视频在线播放 | 国产成人精品一区二三区在线观看 | 亚洲一级免费毛片 | 中国日韩欧美中文日韩欧美色 | 在线亚洲一区二区 | 久久精品国产99久久无毒不卡 | 免费不卡 | 国产成人精品.一二区 | 99热这里只有精品88 | 日本精品久久久一区二区三区 |