兩個陣列的交集 II

2021-08-19 01:46:57 字數 676 閱讀 7392

給定兩個陣列,寫乙個方法來計算它們的交集。

例如:給定

nums1 =[1, 2, 2, 1], nums2 =[2, 2], 返回[2, 2].

注意:

思路:對於這種題型,我的第乙個思路就是遍歷nums2,看nums1中是否有元素與其相等,若相等,則投入交集陣列。

但仔細想想就會發現行不通,因為陣列中會可能會有

重複元素。

既然會有重複元素,我們不妨延伸該思路,你重複,那我就為你儲存你出現的次數。怎麼儲存?很簡單,宣告乙個陣列或者stl的map關聯容器來儲存nums1中每個值出現的次數。然後再用nums2一一比較,

若相等,則與該元素關聯的次數減一,減為0,就刪除該元素。

**如下:

class solution ;

if (nums2.empty())

return {};

vectorresult;

mapnums;

for (auto i = nums1.cbegin(); i < nums1.cend(); ++i)

for (int i = 0; i < nums2.size(); ++i)

}return result;

}};

兩個陣列的交集II

給定兩個陣列,編寫乙個函式來計算它們的交集。示例 1 輸入 nums1 1,2,2,1 nums2 2,2 輸出 2,2 示例 2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 4,9 說明 輸出結果中每個元素出現的次數,應與元素在兩個陣列 現的次數一致。我們可以不考慮輸出結果...

兩個陣列的交集 II

給定兩個陣列,編寫乙個函式來計算它們的交集。示例 1 輸入 nums1 1,2,2,1 nums2 2,2 輸出 2,2 示例 2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 4,9 方法一 雜湊表,把陣列1的所有元素都放到雜湊表中,並記錄次數。然後再遍歷陣列2,看雜湊表中是...

php 兩個陣列求交集 兩個陣列的交集 II

給定兩個陣列,編寫乙個函式來計算它們的交集。輸入 nums1 1,2,2,1 nums2 2,2 輸出 2,2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 4,9 輸出結果中每個元素出現的次數,應與元素在兩個陣列 現次數的最小值一致。我們可以不考慮輸出結果的順序。1.將兩個陣...