https://leetcode-cn.com/problems/intersection-of-two-arrays/
与えられた2つの配列が、その交点を計算する関数を記述します。
例1:
入力:nums1 = [1,2,2,1]、nums2 = [2,2]
出力:[2]
例2:
入力:= [4,9,5] nums2 = [9,4,9,8,4] nums1の
出力:[9.4]
説明:
各要素の出力は一意でなければなりません。
私たちは、出力の順序を考慮することはできません。
しようとする鶏料理:
同様に、昨日同様のトピックを行う、直接コードビット最後の最適なソリューションを変更します。
1 クラスソリューション{ 2 公共: 3 ベクトル< INT >交差点(ベクトル< INT >&nums1、ベクトル< INT >&nums2){ 4 ベクトル< INT > REC。 5 unordered_map < int型、int型 > マップ。 6 用(INT iは= 0 ; I <nums1.size()は、i ++ ) 7 マップ[nums1 [I] + = 1 ; 8 のための(int型 I = 0; I <nums2.size()。I ++ ) 9 であれば(マップ[nums2 [I]]> 0 ){ 10 rec.push_back(nums2 [I])。 11 地図[nums2 [I] = 0 ; 12 } 13 リターンREC。 14 } 15 }。
Day27ブログは、具体的にそれを参照してください!
出典:滞在ボタン(LeetCode)
リンクします。https://leetcode-cn.com/problems/intersection-of-two-arrays
すべてのネットワークからの控除が著作権を保有。商業転載は、ソースを明記してください許可公式、非商用の転載をご連絡ください。