ETH官方钱包

前往
大廳
主題

LeetCode - 2032. Two Out of Three 解題心得

Not In My Back Yard | 2022-03-23 00:00:06 | 巴幣 100 | 人氣 171

題目連結:


題目意譯:
給定三個整數陣列 nums1 、 nums2 以及 nums3,回傳一個包含著至少出現於其中兩個陣列的所有數字之額外陣列。你可以按任意順序回傳答案。

限制:
1 ≦ nums1.length, nums2.length, nums3.length ≦ 100
1 ≦ nums1[i], nums2[j], nums3[k] ≦ 100



範例測資:
範例 1:
輸入: nums1 = [1,1,3,2], nums2 = [2,3], nums3 = [3]
輸出: [3,2]
解釋: 至少出現於兩個陣列中的數字為:
- 3,在全部三個陣列中。
- 2,在 nums1 和 nums2 中。

範例 2:
輸入: nums1 = [3,1], nums2 = [2,3], nums3 = [1,2]
輸出: [2,3,1]
解釋: 至少出現於兩個陣列中的數字為:
- 2,在 nums2 和 nums3 中。
- 3,在 nums1 和 nums2 中。
- 1,在 nums1 和 nums3 中。

範例 3:
輸入: nums1 = [1,2,2], nums2 = [4,3,3], nums3 = [5]
輸出: []
解釋: 沒有至少出現於兩個陣列中的數字。


解題思維:
因為所有可能的數字只有 1 ~ 100(含)而已,因此我們直接統計每個陣列每種數字出現與否即可(有出現當作 1;反之當作 0)。最後掃過每種數字,然後把三個陣列的結果加總看有沒有 ≧ 2。有 ≧ 2 的話,則代表該種數字至少出現於兩個陣列之中,因此可以放入答案陣列中。




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

追蹤 創作集

作者相關創作

更多創作