350.两个数组的交集 ②

目录

题目

给你两个整数数组 nums1 和 nums2 ,请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数,应与元素在两个数组中都出现的次数一致(如果出现次数不一致,则考虑取较小值)。可以不考虑输出结果的顺序。

过程

思路1:分离双指针,两边先排序,然后都遍历,有点类似两个有序数组的合并。

解法

bash 复制代码
class Solution {
public:
    vector<int> intersect(vector<int>& nums1, vector<int>& nums2) {
        int s1=nums1.size();
        int s2=nums2.size();
        int left1=0;
        int left2=0;
        sort(nums1.begin(),nums1.end());
        sort(nums2.begin(),nums2.end());
        vector<int> s3;
        while(left1<s1 && left2<s2){
            if(nums1[left1]<nums2[left2]){
                left1++;
            }else if(nums1[left1]>nums2[left2]){
                left2++;
            }else{
                s3.push_back(nums1[left1]);
                left1++;
                left2++;
            }
        }
        return s3;
    }
};
相关推荐
priority_key21 小时前
排序算法:堆排序、快速排序、归并排序
java·后端·算法·排序算法·归并排序·堆排序·快速排序
不染尘.1 天前
2025_11_7_刷题
开发语言·c++·vscode·算法
来荔枝一大筐1 天前
力扣 寻找两个正序数组的中位数
算法
算法与编程之美1 天前
理解Java finalize函数
java·开发语言·jvm·算法
学编程就要猛1 天前
数据结构初阶:Java中的Stack和Queue
数据结构
地平线开发者1 天前
LLM 训练基础概念与流程简介
算法·自动驾驶
是苏浙1 天前
零基础入门C语言之C语言实现数据结构之顺序表
c语言·开发语言·数据结构
点云SLAM1 天前
弱纹理图像特征匹配算法推荐汇总
人工智能·深度学习·算法·计算机视觉·机器人·slam·弱纹理图像特征匹配
星释1 天前
Rust 练习册 :Matching Brackets与栈数据结构
数据结构·算法·rust
地平线开发者1 天前
Camsys 时间戳信息简介
算法·自动驾驶