この質問は3つの方法が、オンライン基本的に存在している1は、要素と要素出現数を記録するために、ハッシュテーブルを使用することであり、他方が行うために暴力を使用することで、この質問は、私は考えているので、基本的には他の人のアイデアを学ぶことです多くの場所があるので、Cのコーディングを使用していることは明らかではないので、書くために、ハッシュテーブルはまた、C ++で文言を使用する可能性が低いです。
知識ポイント:ハッシュテーブル(ハッシュテーブル、ハッシュテーブル)は、キー(キー値)とデータ構造への直接アクセスの基本です。
(方法1:暴力ソリューション)
クラス解決{ パブリック: ベクトル < INT > INTERSECT(ベクトル< INT >&nums1、ベクトル< INT >&nums2){ ベクトル < INT > RET; //は、二つの数値配列の交点の記録素子を作成 するために(ベクトル< 整数 >反復子IT1 = nums1.begin ::();! nums1.end IT1 =(); IT1 ++ ){ ために(ベクトル< INT > :: = nums2.beginイテレータIT2(); nums2.end IT2 =();! IT2 ++ ){ IF(IT1 * == * IT2){ ret.push_back( *IT1); //場合は2と同じ要素を持つ配列、RETでこの要素、およびこれら2つの要素の空、あなたがエラーなしで探している次回 * IT1 = - 10086 ; * IT2 = - 10085 ; } } } 戻りRET; } }。