当前位置: 首页 > news >正文

LeetCode刷题---二分查找---350

两个数组的交集 II

350. 两个数组的交集 II - 力扣(LeetCode)

题目

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

示例 1:

输入:nums1 = [1,2,2,1], nums2 = [2,2]
输出:[2,2]

示例 2:

输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]
输出:[4,9]

提示:

  • 1 <= nums1.length, nums2.length <= 1000
  • 0 <= nums1[i], nums2[i] <= 1000

自己的思路和代码

思路:

        这道题感觉用哈希表更好一些,存储两个哈希表,直接查找就好啦。

代码:
class Solution {
public:
    vector<int> intersect(vector<int>& nums1, vector<int>& nums2) {
        unordered_map<int, int> table1;
        unordered_map<int, int> table2;
        vector<int> result;

        for(int i=0; i<nums1.size(); i++) {
            table1[nums1[i]]++;
        }
        for(int i=0; i<nums2.size(); i++) {
            table2[nums2[i]]++;
        }

        for(auto itr=table1.begin(); itr!=table1.end(); itr++) {
            if(table2.find(itr->first) != table2.end()) {
                for(int i=0; i<min(itr->second, table2[itr->first]); i++) {
                    result.push_back(itr->first);
                }
            }
        }
        return result;

    }
};

http://www.dtcms.com/a/30104.html

相关文章:

  • 鸿蒙-Canvas-图片滑动验证
  • 索引的优缺点与常见类型详解
  • 基于YOLO11深度学习的半导体芯片缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】
  • stm32-LCD(液晶显示器)
  • Python爬虫具体是如何解析商品信息的?
  • Mac book Air M2 用VMware安装 Ubuntu22.04
  • 最短路的方案数+打印路径
  • 基于WebRTC与AI大模型接入EasyRTC:打造轻量级、高实时、强互动的嵌入式音视频解决方案
  • Ollama常用命令详解:快速掌握核心操作
  • # 嵌入式基础学习|C语言——进程篇综合(含进阶)
  • Flutter项目中设置安卓启动页
  • 使用S32DS部署Tensorflow lite到S32K3
  • 【Blender】二、建模篇--05,阵列修改器与晶格形变
  • 力扣27. 移除元素(快慢指针)
  • JUC并发—9.并发安全集合三
  • SPRING10_SPRING的生命周期流程图
  • 使用Docker Desktop部署GitLab
  • vue语法---样式操作-行内样式
  • AI IDE 新势力 Trae 功能深度解析:Builder与Chat模式的应用场景与市场竞争力分析
  • 天 锐 蓝盾终端安全管理系统:办公U盘拷贝使用管控限制
  • Spring容器初始化扩展点:ApplicationContextInitializer
  • 简单模拟实现一个线程池
  • Redis数据结构-String字符串
  • Unity 中导入的VRM模型渲染为VRoid风格
  • python学智能算法|模拟退火算法
  • ptython setup.py install 设置python包编译时的并行数
  • eNSP下载安装(eNsp、WinPcap、Wireshark、VirtualBox下载安装)
  • 【接口测试】使用Requests库发送POST请求
  • 1分钟快速了解——Java几种常见的锁
  • Django Admin: 实现基于数据库实际值的动态过滤器