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

Leetcode 350:两个数组的交集II

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

示例 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.设置两个Map,先将num1中全部元素存入map中;

2.遍历num2中元素,若存在于map中,则对应键值减一,且res中对应键值加1。

3.将res转化为数组。

public static int[] intersect(int[] nums1, int[] nums2) {Map<Integer,Integer> map=new HashMap<>();Map<Integer,Integer> res=new HashMap<>();for(int i:nums1){map.put(i,map.getOrDefault(i,0)+1);}for(int j:nums2){if(map.containsKey(j)){res.put(j,res.getOrDefault(j,0)+1);map.put(j,map.get(j)-1);if(map.get(j)==0){map.remove(j);}}}//将res转换为数组//计算数组长度int len=0;for(int i:res.keySet()){len=len+res.get(i);}int[] result=new int[len];int count=0;for(int i:res.keySet()){for(int j=0;j<res.get(i);j++){result[count]=i;count++;}}return result;}

相关文章:

Leetcode 350:两个数组的交集II

给你两个整数数组 nums1 和 nums2 &#xff0c;请你以数组形式返回两数组的交集。返回结果中每个元素出现的次数&#xff0c;应与元素在两个数组中都出现的次数一致&#xff08;如果出现次数不一致&#xff0c;则考虑取较小值&#xff09;。可以不考虑输出结果的顺序。 示例 1…...

【数据结构】队列的实现与优化指南

一、前言 队列是一种重要的数据结构&#xff0c;它按照“先入先出”&#xff08;FIFO&#xff09;的原则管理数据。本文将介绍队列的概念、应用场景&#xff0c;以及如何使用数组实现普通队列和环形队列。 二、内容 2.1 概述 &#xff08;1&#xff09;什么是队列&#xff1…...

视频太大怎么压缩变小?三分钟学会视频压缩

随着科技的不断发展&#xff0c;视频已经成为了我们日常生活中不可或缺的一部分&#xff0c;然而&#xff0c;大尺寸的视频文件常常会给我们带来诸多困扰&#xff0c;例如发送不便、存储空间不足等等&#xff0c;那么&#xff0c;如何将这些过大的视频文件压缩变小呢&#xff1…...

Rust 泛型

泛型 Generics泛型详解 使用泛型参数&#xff0c;有一个先决条件&#xff0c;必需在使用前对其进行声明&#xff1a; fn largest<T>(list: &[T]) -> T {该泛型函数的作用是从列表中找出最大的值&#xff0c;其中列表中的元素类型为 T。首先 largest<T> 对…...

STM32+2.9inch微雪墨水屏(电子纸)实现显示

本篇文章从硬件原理以及嵌入式编程等角度完整的介绍了墨水屏驱动过程&#xff0c;本例涉及的墨水屏为2.9inch e-Paper V2,它采用的是“微胶囊电泳显示”技术进行图像显示&#xff0c;其基本原理是悬浮在液体中的带电纳米粒子受到电场作用而产生迁移&#xff0c;从而改变显示屏各…...

Hadoop3教程(二十九):(生产调优篇)集群扩容及缩容(白名单与黑名单)

文章目录 &#xff08;150&#xff09;添加白名单&#xff08;151&#xff09;服役新服务器&#xff08;152&#xff09;服务器间数据均衡&#xff08;153&#xff09;黑名单退役服务器参考文献 这一章还算是比较重要的。 &#xff08;150&#xff09;添加白名单 白名单&#…...

NET7下用WebSocket做简易聊天室

NET7下用WebSocket做简易聊天室 步骤&#xff1a; 建立NET7的MVC视图模型控制器项目创建websocket之间通信的JSON字符串对应的实体类一个房间用同一个Websocketwebsocket集合类&#xff0c;N个房间创建websocket中间件代码Program.cs中的核心代码&#xff0c;使用Websocket聊…...

详解API基础知识

目录 什么是API: API 的设计原则包括&#xff1a; API 的开发流程包括以下几个步骤&#xff1a; API 的使用场景包括&#xff1a; API 的优势包括&#xff1a; 然而&#xff0c;API 也存在一些挑战和问题&#xff0c;例如&#xff1a; 什么是API: API&#xff08;应用程…...

b树和b+树

二叉树和平衡二叉树 二叉树&#xff0c;每个节点支持两个分支的树结构&#xff0c;相比于单向链表&#xff0c;多了一个分支。 二叉查找树&#xff0c;在二叉树的基础上增加了一个规则&#xff0c;左子树的所有节点的值都小于它的根 节点&#xff0c;右子树的所有子节点都大于它…...

Linux 下 Java 安装字体方法

因上线访问图字体乱码了&#xff0c;因为在windows下设置的微软雅黑&#xff0c;linux默认是没有的&#xff0c;所以需要给jdk安装一个微软雅黑字体。按照步骤来&#xff0c;so easy&#xff01; 1&#xff09;首先找到windows下面的字体&#xff0c;不用去其他地方下了&#…...

敏捷开发的实施要素和实现敏捷的实际改进

​ 敏捷开发的实施要素如下&#xff1a; 个体和交互&#xff1a;胜过过程和工具。可以工作的软件&#xff1a;胜过面面俱到的文档。客户合作&#xff1a;胜过合同谈判。响应变化&#xff1a;胜过遵循计划。 敏捷开发过程是一个增量的、迭代的过程&#xff0c;责任人、开发人…...

学会使用Pandas进行数据清洗

大家好&#xff0c;如果你对数据科学感兴趣&#xff0c;那么数据清洗可能对你来说是一个熟悉的术语&#xff0c;本文将向你介绍使用Pandas进行数据清洗的过程。我们的数据通常来自多个资源&#xff0c;而且并不干净&#xff0c;它可能包含缺失值、重复值、错误或不需要的格式等…...

Stable Diffusion WebUI扩展a1111-sd-webui-tagcomplete之Booru风格Tag自动补全功能详细介绍

安装地址 直接附上地址先: Ranting8323 / A1111 Sd Webui Tagcomplete GitCodeGitCode——开源代码托管平台,独立第三方开源社区,Git/Github/Gitlabhttps://gitcode.net/ranting8323/a1111-sd-webui-tagcomplete.git上面是GitCode的地址,下面是GitHub的地址,根据自身情…...

Linux中iostat命令

iostat命令是IO性能分析的常用工具&#xff0c;其是input/output statistics的缩写。 一、安装 yum install sysstat -y二、参数说明 -c: 显示CPU使用情况-d: 显示磁盘使用情况--dec{ 0 | 1 | 2 }: 指定要使用的小数位数&#xff0c;默认为 2-g GROUP_NAME { DEVICE [...] | A…...

Pandas数据处理分析系列3-数据如何预览

Pandas-数据预览 Pandas 导入数据后,我们通常需要对数据进行预览,以便更好的进行数据分析。常见数据预览的方法如下: ①head() 方法 功能:读取数据的前几行,默认显示前5行 语法结构:df.head(行数) df1=pd.read_excel("销售表.xlsx",sheet_name="手机销…...

【汇编语言-王爽】第二章:寄存器

知识点 &#xff08;一&#xff09;寄存器 一个典型的CPU由运算器、控制器、寄存器等器件构成&#xff0c;这些器件靠内部总线相连。8086CPU有14个寄存器&#xff1a;AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW。其中AX、BX、CX、DX为通用寄存器&#xff0c;可…...

5G学习笔记之5G频谱

参考&#xff1a;《5G NR通信标准》1. 5G频谱 1G和2G移动业务的频段主要在800MHz~900MHz&#xff0c;存在少数在更高或者更低频段&#xff1b;3G和4G的频段主要在450MHz ~ 6GHz&#xff1b;5G主要是410MHz ~ 6GHz&#xff0c;以及24GHz ~ 52GHz。 5G频谱跨度较大&#xff0c;可…...

CSS 浮动布局

本文参考 https://blog.csdn.net/ZhangJiWei_2019/article/details/114669722 文档流简介 正常文档流 正常文档流&#xff0c;又称为“普通文档流”或“普通流”&#xff0c;也就是W3C标准所说的“normal flow”。 我们先来看一下正常文档流的简单定义&#xff1a;正常文档…...

CentOS 系统安装和使用Docker服务

系统环境 使用下面的命令&#xff0c;可以查看CentOS系统的版本。 lsb_release -a结果&#xff1a; 说明我的系统是7.9.2009版本的 安装Docker服务 依次执行下面的指令&#xff1a; yum install -y yum-utilsyum install -y docker即可安装docker服务 如果这样安装不成功…...

Docker-镜像的备份迁移及私有仓库的搭建

一、Docker-备份与迁移 A服务器系统配置 B服务器系统配置 1.用命令将容器保存为镜像。 案例&#xff0c;将A服务器的Docker容器迁移到另外一台服务器B&#xff0c;A服务器的容器配置过对应的文件&#xff0c;不想在B服务器重新搭建&#xff0c;可以使用该案例。 docker c…...

140. 如何使用 nginx /dbg

What is the /dbg command? 什么是 /dbg 命令&#xff1f;/dbg is a program included in the ingress-nginx container image that can be used to show information about the nginx environment and the resulting nginx configuration, which can be helpful when debuggi…...

2026 AI数字员工合规运营指南:等保2.0、关基保护与数据安全法的落地实践

摘要随着AI数字员工深入关键信息基础设施和核心业务系统&#xff0c;监管机构对AI安全的关注度持续升温。2026年&#xff0c;等保2.0测评已新增AI安全扩展要求&#xff0c;关基保护明确将“智能体”纳入关键资产范围。本文基于悬镜灵境AIDR在金融、政务、能源等行业的合规运营实…...

从STM32换到GD32,串口通信就崩了?聊聊MCU串口IP核那些‘看不见’的差异

从STM32迁移到GD32&#xff1a;串口通信失效背后的硬件设计哲学解析 当工程师们满怀期待地将项目从STM32平台迁移至国产GD32系列时&#xff0c;往往会在串口通信这个看似基础的功能上遭遇意想不到的挫折。特别是在RS-422/485等转换接口场景下&#xff0c;原本在STM32上稳定运行…...

别再死记硬背了!用Fluent做流体仿真,这5个核心参数设置对了才算入门

别再死记硬背了&#xff01;用Fluent做流体仿真&#xff0c;这5个核心参数设置对了才算入门 刚接触Fluent的工程师和学生常常会陷入一个误区&#xff1a;试图记住所有理论模型和参数的细节。但真实工程场景中&#xff0c;80%的仿真问题往往源于20%的关键参数设置不当。本文将聚…...

【Java Loom响应式转型终极指南】:20年架构师亲测的5大避坑法则与性能跃迁实录

第一章&#xff1a;Java Loom响应式转型的底层逻辑与时代必然性在高并发、低延迟成为现代云原生服务标配的今天&#xff0c;传统基于线程池与回调链的异步编程模型正面临严峻挑战。Java Loom 并非一次简单的 API 增量更新&#xff0c;而是 JVM 运行时对“并发抽象”本质的重新定…...

UniApp跨端登录踩坑实录:微信静默拿信息,支付宝为啥非得弹个窗?

UniApp跨平台登录实战&#xff1a;微信与支付宝授权机制深度解析 登录功能作为小程序用户体系的入口&#xff0c;其实现质量直接影响用户体验和留存率。UniApp虽然提供了跨平台统一API&#xff0c;但各平台底层授权机制的差异常常让开发者措手不及。本文将深入剖析微信与支付宝…...

DJI Osmo Nano 4/5评测:小巧便携功能强,成冒险家与vlogger新宠!

优点- 设计紧凑轻便&#xff1a;适合冒险和日常使用。- 出色的视频录制&#xff1a;支持 4K/120fps 录制&#xff0c;搭配 D-Log M 配置文件&#xff0c;提供卓越的视频质量和编辑灵活性。- 内置存储与快充电池&#xff1a;内置存储方便使用&#xff0c;快充电池节省时间。缺点…...

为什么90%的团队虚拟线程改造失败?揭秘3大反模式:阻塞IO、同步锁滥用、监控盲区(附诊断脚本)

第一章&#xff1a;虚拟线程的本质与高并发架构适配性再认知虚拟线程并非操作系统内核线程的简单封装&#xff0c;而是 JVM 在用户态实现的轻量级执行单元&#xff0c;其核心价值在于将“线程生命周期管理”从 OS 转移至运行时&#xff0c;从而解耦调度成本与并发规模。每个虚拟…...

Linux服务器开机自动挂载网络磁盘(NFS)完整配置流程与排错指南

Linux服务器NFS网络磁盘持久化挂载实战指南 在分布式架构与数据密集型应用场景中&#xff0c;网络文件系统&#xff08;NFS&#xff09;的稳定挂载直接关系到业务连续性。当服务器意外重启后&#xff0c;若共享存储未能自动恢复连接&#xff0c;可能导致应用服务雪崩式瘫痪。本…...

R语言实战:用RMST分析肝硬化患者生存数据,告别风险比依赖

R语言实战&#xff1a;用RMST解锁肝硬化患者生存分析新视角 当临床医生面对肝硬化患者的生存数据时&#xff0c;传统风险比分析常让人陷入解释困境——特别是当生存曲线交叉或删失严重时。限制平均生存时间(RMST)提供了一种直观的解决方案&#xff1a;它直接回答"治疗组患…...