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

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

LEETCODE--Intersection of Two Arrays

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

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; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 察雅县| 共和县| 会理县| 静宁县| 福海县| 南宫市| 新营市| 望城县| 民勤县| 南宁市| 拉萨市| 北海市| 康马县| 阳西县| 禄丰县| 宜良县| 合川市| 深圳市| 元谋县| 彰化县| 武隆县| 鄢陵县| 广州市| 白山市| 基隆市| 耒阳市| 中牟县| 张家界市| 连云港市| 布拖县| 色达县| 和平县| 方正县| 吴江市| 淅川县| 土默特右旗| 长宁县| 夹江县| 自治县| 科技| 尚义县|