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

Leetcode_349.两个数组的交集

在这里插入图片描述
这道题的意思很明确,就是让寻找两个数组中的共同元素,并去重,由此可以联想到哈希表的特性,注意到题目给的数据范围,在1000以内,所以本题可以使用 STL 的库函数,也可以使用数组进行模拟。
本题要求去重的交集,因此选用unordered_set。相比于set(红黑树实现,O(log n)查找),unordered_set(哈希表实现,平均O(1)查找)在效率上更优。

class Solution {
public:vector<int> intersection(vector<int>& nums1, vector<int>& nums2) {// 使用unordered_set存储nums1的元素,自动去重unordered_set<int> st(nums1.begin(), nums1.end());// 用于存储结果的集合,保证结果中的元素唯一unordered_set<int> result;// 遍历nums2中的每个元素for(int i = 0; i < nums2.size(); i++) {// 检查当前元素是否存在于nums1中(即是否在st集合中)if(st.find(nums2[i]) != st.end()) {// 如果存在,则将该元素加入结果集合result.insert(nums2[i]);}}// 将结果集合转换为vector返回return vector<int>(result.begin(), result.end());}
};
http://www.xdnf.cn/news/16413.html

相关文章:

  • SPI通信协议
  • 分布式渲染效能探析:关键网络性能要素
  • 机器学习基础-matplotlib
  • linux系统----Ansible中的playbook简单应用
  • 计算机视觉---Halcon概览
  • 【算法训练营Day17】二叉树part7
  • 【学习路线】Android开发2025:从入门到高级架构师
  • linux命令grep的实际应用
  • MySQL 与 PostgreSQL 对比
  • Redis四种GetShell方式完整教程
  • 【WRF-Chem第二期】WRF-Chem有关 namelist 详解
  • 1.DRF 环境安装与配置
  • 零基础学习性能测试第九章:全链路追踪-系统中间件节点监控
  • LeetCode 刷题【18. 四数之和】
  • 计算机网络编程-Socket通信以及实战
  • 企业级JWT验证最佳方案:StringUtils.hasText()
  • 使用Ettus USRP X440对雷达和EW系统进行原型验证
  • 分布式IO选型指南:2025年分布式无线远程IO品牌及采集控制方案详解
  • Python动态规划:从基础到高阶优化的全面指南(2)
  • socketpair函数详解
  • Qt小组件 - 8 图片浏览器
  • go‑cdc‑chunkers:用 CDC 实现智能分块 强力去重
  • SpringBoot轻松集成豆包AI
  • 精简 RT-Thread 工程并查找占用空间大的模块
  • 中国汽车能源消耗量(2010-2024年)
  • java里List链式编程
  • 【智慧物联网平台】安装部署教程——仙盟创梦IDE
  • Jenkins流水线部署+webhook2.0
  • 四、计算机组成原理——第7章:输入/输出系统
  • 命令执行漏洞