LeetCode简单题之找出两数组的不同
題目
給你兩個下標從 0 開始的整數數組 nums1 和 nums2 ,請你返回一個長度為 2 的列表 answer ,其中:
answer[0] 是 nums1 中所有 不 存在于 nums2 中的 不同 整數組成的列表。
answer[1] 是 nums2 中所有 不 存在于 nums1 中的 不同 整數組成的列表。
注意:列表中的整數可以按 任意 順序返回。
示例 1:
輸入:nums1 = [1,2,3], nums2 = [2,4,6]
輸出:[[1,3],[4,6]]
解釋:
對于 nums1 ,nums1[1] = 2 出現在 nums2 中下標 0 處,然而 nums1[0] = 1 和 nums1[2] = 3 沒有出現在 nums2 中。因此,answer[0] = [1,3]。
對于 nums2 ,nums2[0] = 2 出現在 nums1 中下標 1 處,然而 nums2[1] = 4 和 nums2[2] = 6 沒有出現在 nums2 中。因此,answer[1] = [4,6]。
示例 2:
輸入:nums1 = [1,2,3,3], nums2 = [1,1,2,2]
輸出:[[3],[]]
解釋:
對于 nums1 ,nums1[2] 和 nums1[3] 沒有出現在 nums2 中。由于 nums1[2] == nums1[3] ,二者的值只需要在 answer[0] 中出現一次,故 answer[0] = [3]。
nums2 中的每個整數都在 nums1 中出現,因此,answer[1] = [] 。
提示:
1 <= nums1.length, nums2.length <= 1000
-1000 <= nums1[i], nums2[i] <= 1000
來源:力扣(LeetCode)
解題思路
??這其實是一道數學題,題目的意思大致是找出nums1中有的nums2中沒有的元素和nums2中有的nums1中有的元素,這顯然是需要進行差集運算。
class Solution:def findDifference(self, nums1: List[int], nums2: List[int]) -> List[List[int]]:A,B=set(nums1),set(nums2)return [list(A-B),list(B-A)]
總結
以上是生活随笔為你收集整理的LeetCode简单题之找出两数组的不同的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode中等题之区域和检索 -
- 下一篇: LeetCode简单题之删除字符使字符串