国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

LEETCODE--Intersection of Two Arrays

2019-11-14 10:38:40
字體:
來源:轉載
供稿:網友

Given two arrays, write a function to compute their intersection. Example: Given nums1 = [1, 2, 2, 1], nums2 = [2, 2], return [2]. Note: Each element in the result must be unique. The result can be in any order. 方法一:用時短.ps:為了避免重復使用tag標記數組,在每次配對成功之后,將相應tag數組中的位置重新置0;

class Solution {public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { int tag[1000] = {0}; int len1 = nums1.size(); int len2 = nums2.size(); for(int i = 0; i < len1; i++){ tag[nums1[i]] = 1; } vector<int> vec; for(int j = 0; j < len2; j++){ if(tag[nums2[j]] == 1){ tag[nums2[j]] = 0; vec.push_back(nums2[j]); } } return vec; }};

方法二: 用時略長先排序再比對。

class Solution {public: vector<int> intersection(vector<int>& nums1, vector<int>& nums2) { sort(nums1.begin(), nums1.end()); sort(nums2.begin(), nums2.end()); int i = 0; int j = 0; int len1 = nums1.size(); int len2 = nums2.size(); vector<int> vec; int k = 0; while(i < len1 && j < len2){ if(nums1[i] == nums2[j]){ if(vec.size() == 0 || nums1[i] != vec[k-1]){ vec.push_back(nums1[i]); k++; i++; j++; }else{ i++; j++; } }else{ if(nums1[i] < nums2[j]) i++; else j++; } } return vec; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临武县| 深州市| 亳州市| 随州市| 措勤县| 浦城县| 全椒县| 农安县| 金山区| 蒲城县| 桦南县| 都昌县| 新丰县| 景宁| 青龙| 眉山市| 南宁市| 呼玛县| 邵阳县| 确山县| 台东县| 璧山县| 涿州市| 化州市| 台北市| 藁城市| 龙井市| 老河口市| 明星| 汾西县| 汉沽区| 松桃| 眉山市| 溧阳市| 盐津县| 全椒县| 嘉兴市| 凤台县| 柘荣县| 长子县| 原平市|