兩個陣列的交集 LeetCode(Java實現)

2021-09-14 04:21:15 字數 736 閱讀 3946

題目描述:

給定兩個陣列,編寫乙個函式來計算它們的交集。

示例 1:

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

輸出: [2]

示例 2:

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

輸出: [9,4]

說明:

解題思路:

寫乙個工具類,可以在給定陣列中查詢是否有指定元素的存在。

建立乙個新陣列,用於存放兩陣列交集的元素,初始長度為兩陣列中較小陣列的長度。

因為輸出結果中的元素是唯一的,也就是不能重複。所以先將乙個陣列排序。

遍歷排序後的陣列中的每乙個元素(如果該元素不唯一,則跳過此元素),查詢每個元素在另乙個陣列中是否存在,如果存在,則將此元素存放進新陣列中。

**實現:

class solution ;

}else if (m < 1 && n < 1)

int num = mvalue) else if (arr[mid] < value) else

}return false;

}}

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

題目 給定兩個陣列,寫乙個方法來計算它們的交集。例如 給定nums1 1,2,2,1 nums2 2,2 返回 2,2 注意 跟進 用map來建立nums1中字元和其出現個數之間的對映,然後遍歷nums2陣列,如果當前字元在map中的個數大於0,則將此字元加入結果res中,然後map的對應值自減1。...