LeetCode 兩個陣列的交集 II

2021-09-29 20:39:52 字數 981 閱讀 1356

題目

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

例如:

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

注意:

跟進:

用map來建立nums1中字元和其出現個數之間的對映, 然後遍歷nums2陣列,如果當前字元在map中的個數大於0,則將此字元加入結果res中,然後map的對應值自減1。

public int intersect(int nums1, int nums2) 

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

}int result = new int[tmp.size()];

int i = 0;

for (integer e : tmp)

result[i++] = e;

return result;

}

給兩個陣列排序,然後用兩個索引分別代表兩個陣列的起始位置,如果兩個索引所代表的數字相等,則將數字存入結果中,兩個索引均自增1,如果第乙個索引所代表的數字大,則第二個索引自增1,反之亦然。

public int intersect(int nums1, int nums2)  else if (nums2[j] < nums1[i])  else 

}int result = new int[tmp.size()];

for (int k = 0; k < result.length; k++)

return result;

}

LeetCode 兩個陣列的交集 I

給定兩個陣列,寫乙個函式來計算它們的交集。例子 給定 num1 1,2,2,1 nums2 2,2 返回 2 解題思路 由於問題中的元素是唯一的,所以我們只關心元素的有無,那麼我們可以使用set這個結構。首先將nums1的所有資料存入set中,查詢nums2中的資料是否在這個set中,如果在的話,我...

LeetCode 兩個陣列的交集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 說明 輸出結果中每個元素出現的次數,應與元素在兩個陣列 現的次數一致。我們可以不考慮輸出結果...

leetcode 兩個陣列的交集 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 說明 輸出結果中每個元素出現的次數,應與元素在兩個陣列 現的次數一致。我們可以不考慮輸出結果...