每日一算 求兩個陣列的交集

2021-06-26 17:42:16 字數 448 閱讀 9647

問題: 給你兩個排序的陣列,求兩個陣列的交集。

假設集合a,集合b

思路:1.最容易的,最費時的:將乙個集合的的每乙個元素在另外乙個元素中查詢;

2.由於是已經排序的,可以從a,b集合中的開端開始,使用兩個指標指向a,b集合的頭部;

a) 比較指標指向的元素大小

b)相等 則是假如到交集的集合中

c)不相等:較小的元素所在集合指標後移一,返回a

網路擴充套件思路:對查詢進行優化

1.使用hashset等底層為hash表的容器進行儲存元素,這樣查詢速度相當快。

2.使用二分查詢法**於:

3.arraylist、hashset,在資料組織上類似於數學上的陣列,可以進行「交」、「並」、「差」等運算。**於:

交集:retainall();

差集:removeall();

並集:addall();

每日一題 兩個陣列的交集 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 輸入 nums1 1,2,2,1 nums2 2,2 輸出 2,2 示例 2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 4,9 說明 輸出結果中每個元素出現的次數,應與元素在兩個陣列 現的次數一致。我們可以不考慮輸出結果...

兩個陣列的交集

題目 給定兩個陣列,編寫乙個函式來計算它們的交集。示例 1 輸入 nums1 1,2,2,1 nums2 2,2 輸出 2 示例 2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 9,4 說明 首先說一下我自己的 菜雞 思路 我先是想先去重第第乙個陣列 nums1 然後迴圈判斷...