兩陣列的交

2021-08-02 03:49:57 字數 506 閱讀 9278

題目:

返回兩個陣列的交

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

思路:首先將兩個陣列排序,這樣便於比較並取其交。如果不相等,數值小的陣列向後移一位在比較大小,如果相等就判斷該值之前是否放入過。排序的後再去交的好處就在於判讀之前是否放入過只需看當前要放入的值和前乙個判斷相等的值是否相等,如果相等說明該值之間放入過不能重複放入,若不相等則可放入到新的陣列中。直到所有的元素都比較過後,退出迴圈,返回交陣列。

**:class solution

}return qq;}};

感想:一開始我用了兩個for迴圈來比較陣列中的元素是否相等,如果相等再用for迴圈看交陣列中有沒有和該元素相等的陣列,如果有記b=1,最後如果b=0則說明沒有相同的,可以放入。這個思路上和**表達上都不難,但是時間複雜度太大。後又一想,排序中的題,應該有排序的功能,排序後在取交就十分輕鬆的解決了複雜度的問題。

兩陣列的交 和 兩陣列的交

題目描述 計算兩個陣列的交 解題思路 這兩個題我放在一起了,只要會兩個陣列的交就行了,兩個陣列的交 幾乎一樣,就是刪了一點 先分別對兩個陣列排序,然後分別比較兩個陣列的元素,如果有相同的元素插入到新的陣列裡,將這個數儲存起來,用於後面去掉重的元素,如果兩個元素不一樣,繼續比較剩下的元素。兩個陣列的交...

兩陣列的交

返回兩個陣列的交 樣例nums1 1,2,2,1 nums2 2,2 返回 2 先排序,從nums1陣列中取數判斷時,若nums1 i nums2 j 才繼續遍歷nums2,並用乙個k值記錄nums2中比nums1 i 1 小的最大數的角標,下次判斷nums i 時nums2從k值開始取。class...

兩陣列的交

一 問題描述 返回兩個陣列的交 注意事項 樣例nums1 1,2,2,1 nums2 2,2 返回 2 二 解題思路運用set intersection函式很容易求出兩陣列的交集,要注意使用這個函式時引數怎麼樣寫,還有就是inserter函式,要注意裡面的引數,第乙個是要插入的內容,第二個是插入的位...