給定兩個陣列,編寫乙個函式來計算它們的交集。
示例 1:
輸入: nums1 = [1,2,2,1], nums2 = [2,2]
輸出: [2]
示例 2:
輸入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]
輸出: [9,4]
說明:
輸出結果中的每個元素一定是唯一的。
我們可以不考慮輸出結果的順序。
注意一:對於交集中的重複的元素,返回唯一的元素,有兩種方法進行處理:第一種,直接用set存放結果,後轉化成相應的返回型別,第二種,可以用直接用返回型別來存放,但是查詢完之後需要把元素刪除掉
class solution {
public:
vectorintersection(vector& nums1, vector& nums2) {
//查詢,用set可以降低時間複雜度,
//返回結果也是唯一,而不是交集所有元素,故用set
setrecord;
for(int i=0;irecord.insert(nums1
349 兩個陣列的交集
解題思路 1.分別對兩個數字排序 2.遍歷排序胡的陣列nums1和nums2,索引分別用i,j表示,1 當nums1 i 2 當nums1 i nums j 時,則將j 3 準備乙個list陣列。若兩個數相等,則i j 若當前數nums1 i 在list陣列中未出現,則將當前數存到陣列中,只要有乙個...
349 兩個陣列的交集
給定兩個陣列,編寫乙個函式來計算它們的交集。示例 1 輸入 nums1 1,2,2,1 nums2 2,2 輸出 2 示例 2 輸入 nums1 4,9,5 nums2 9,4,9,8,4 輸出 9,4 說明 輸出結果中的每個元素一定是唯一的。我們可以不考慮輸出結果的順序。我的提交 class so...
349 兩個陣列的交集
做法基本兩種 排好序了,可以比較下兩個陣列的最大值,最小值,看看是否有解,在大量資料的時候可以剪枝。int max1,max2,min1,min2 if nums1.length 0 nums2.length 0 return new int 0 max1 nums1 nums1.length 1 ...