NC313 两个数组的交集

NC313 两个数组的交集
添加链接描述在这里插入图片描述

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param nums1 int整型ArrayList 
     * @param nums2 int整型ArrayList 
     * @return int整型ArrayList
     */
    public ArrayList<Integer> intersection (ArrayList<Integer> nums1, ArrayList<Integer> nums2) {
        // write code here
        Set<Integer> set = new HashSet<>();
        for(Integer i : nums1) {
            if(set.contains(i)) continue;
            set.add(i);
        }
        List<Integer> list = new ArrayList<>();
        for(Integer i:nums2) {
            if(list.contains(i)) continue;
            if(set.contains(i)) list.add(i);
        }
        return new ArrayList<>(list);
        
    }
}

解法二

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param nums1 int整型ArrayList 
     * @param nums2 int整型ArrayList 
     * @return int整型ArrayList
     */
    public ArrayList<Integer> intersection (ArrayList<Integer> nums1, ArrayList<Integer> nums2) {
        // write code here
        boolean [] hash = new boolean[1010];
        for(Integer i : nums1) {
            hash[i] = true;
        }
        List<Integer> list = new ArrayList<>();
        for(Integer i : nums2) {
            if(hash[i]){
                list.add(i);
                hash[i] = false;
            } 
        }
        return new ArrayList<>(list);
    }
}

因为题目数据范围不大
通过boolean [] hash = new boolean[1010] 模拟hash

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/909435.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Unity】【游戏开发】Sprite背景闪烁怎么解决

【现象】 VR游戏中&#xff0c;给作为屏幕的3D板子加上Canvas后再加背景image&#xff0c;运行时总是发现image闪烁不定。 【分析】 两个带颜色的object在空间上完全重合时也遇到过这样的问题&#xff0c;所以推测是Canvas的image背景图与木板的面重合导致。 【解决方法】 …

【优选算法 — 双指针】双指针小专题

和为 s 的两个数 和为s的两个数 题目描述 解法一&#xff1a;暴力枚举 暴力枚举&#xff0c;先固定一个数&#xff0c;然后让这个数和另一个数匹配相加&#xff0c; 如果当前的数 所有剩余的数 target&#xff0c;则返回这两个数&#xff0c;否则固定下一个数&#…

鸿蒙原生应用开发及部署:首选华为云,开启HarmonyOS NEXT App新纪元

目录 前言 HarmonyOS NEXT&#xff1a;下一代操作系统的愿景 1、核心特性和优势 2、如何推动应用生态的发展 3、对开发者和用户的影响 华为云服务在鸿蒙原生应用开发中的作用 1、华为云ECS C系列实例 &#xff08;1&#xff09;全维度性能升级 &#xff08;2&#xff…

仿真APP助力汽车零部件厂商打造核心竞争力

汽车零部件是汽车工业的基石&#xff0c;是构成车辆的基础元素。一辆汽车通常由上万件零部件组成&#xff0c;包括发动机系统、传动系统、制动系统、电子控制系统等&#xff0c;它们共同确保了汽车的安全、可靠性及高效运行。 在汽车产业快速发展的今天&#xff0c;汽车零部件…

VMWARE ESXI VMFS阵列故障 服务器数据恢复

1&#xff1a;河南用户一台DELL R740 3块2.4T硬盘组的RAID5&#xff0c;早期坏了一个盘没有及时更换&#xff0c;这次又坏了一个&#xff0c;导致整组RAID5处于数据丢失的状态&#xff0c; 2&#xff1a;该服务器装的是VMware ESXI 6.7&#xff0c;用户把3块硬盘寄过来进行数据…

【拥抱AI】如何让软件开发在保证数据安全的同时更加智能与高效?

第一、推动软件开发向更加智能化、高效化和创新化方向发展的策略 随着AI技术的不断进步&#xff0c;软件开发正朝着更加智能化、高效化和创新化的方向发展。要实现这一目标&#xff0c;企业需要采取一系列综合性的策略&#xff0c;从技术、管理、文化等多个层面入手。以下是一…

【科研绘图】如何使用3DMAX进行科研绘图?

3DMAX&#xff08;通常指3ds Max&#xff09;是一款功能强大的三维建模、动画和渲染软件&#xff0c;广泛应用于科研绘图领域。以下是一些关于使用3DMAX进行科研绘图的基本步骤和技巧&#xff1a; 一、基本步骤 创建基本模型 根据科研需求&#xff0c;使用3DMAX的创建工具&…

使用Python Flask实战构建Web应用

你是否曾想过&#xff0c;使用Python来快速搭建一个Web应用&#xff1f;Flask作为一个轻量级的Web框架&#xff0c;因其简单、灵活且高效&#xff0c;成为了很多开发者首选的工具。今天&#xff0c;就让我们一同走进Flask的世界&#xff0c;探索如何使用它轻松构建一个实战Web应…

CSS画icon图标系列(一)

目录 前言&#xff1a; 一、向右箭头 1.原理&#xff1a; 2.代码实现 3.结果展示&#xff1a; 二、钟表 1.原理&#xff1a; 2.代码展示&#xff1a; 3.最终效果&#xff1a; 三、小手机 1.原理&#xff1a; 2.代码展示&#xff1a; 3.最后效果&#xff1a; 四、结…

分类 classificaton

1&#xff09;什么是分类&#xff1f; 在此之前&#xff0c;我们一直使用的都是回归任务进行学习&#xff1b;这里我们将进一步学习什么是分类&#xff0c;我们先从训练模型的角度来看看二者的区别。 对于回归来说&#xff0c;它所作的是对模型输入相应的特征&#xff0c;然后…

免费且强大的PDF转换工具——PDFgear

前言 PDFgear是一款不可或缺的PDF文件处理工具&#xff0c;凭借其强大的功能和多样的特点&#xff0c;它能帮助用户更快速、高效地编辑和处理PDF文件&#xff0c;显著提升工作效率 通过网盘分享的文件&#xff1a;pdf转换工具 链接: https://pan.baidu.com/s/1ap37H9tP6brqTgf…

sql中判断一个字段是否包含一个数据的方法有哪些?

目录 一、like模糊查询&#xff08;like关键字&#xff09; 二、locate(字符串&#xff0c;字段名) 三、 instr(字段名,字符串) 四、regexp_extract(subject, pattern, index) 以下是几种方法&#xff0c;使用hive来举例演示一下&#xff1a; -- 举例&#xff1a;创建一个…

STM32 + CubeMX + 硬件SPI + W5500 +TcpClient

这篇文章记录一下STM32W5500TCP_Client的调试过程&#xff0c;实现TCP客户端数据的接收与发送。 目录 一、W5500模块介绍二、Stm32CubeMx配置三、Keil代码编写1、添加W5500驱动代码到工程&#xff08;添加方法不赘述&#xff0c;驱动代码可以在官网找&#xff09;2、在工程中增…

C++笔试题之实现一个定时器

一.定时器&#xff08;timer&#xff09;的需求 1.执行定时任务的时&#xff0c;主线程不阻塞&#xff0c;所以timer必须至少持有一个线程用于执行定时任务 2.考虑到timer线程资源的合理利用&#xff0c;一个timer需要能够管理多个定时任务&#xff0c;所以timer要支持增删任务…

Halcon resistor.hedv 使用多个对焦级别提取深度

depth_from_focus * Extract depth using multiple focus levels * 使用多个对焦级别提取深度 Names : [] * 初始化一个空数组&#xff0c;用于存储图像名称 dev_close_window () * 关闭当前打开的图像窗口 for i : 1 to 10 by 1 * 循环开始&#xff0c;从1到10 …

区块链技术与应用-PKU 学习笔记

课程地址 资料&#xff1a; ETH-Security 区块链学习记录_比特币 BTC 密码学原理 比特币&#xff0c;又称加密货币(crypto-currency)&#xff0c;它主要利用了密码学中的哈希函数(cryptographic hash function)的抗碰撞特性(collision resistance)和单向散列特性(hiding) …

Spark 的Standalone集群环境安装与测试

目录 一、Standalone 集群环境安装 &#xff08;一&#xff09;理解 Standalone 集群架构 &#xff08;二&#xff09;Standalone 集群部署 二、打开监控界面 &#xff08;一&#xff09;master监控界面 &#xff08;二&#xff09;日志服务监控界面 三、集群的测试 &a…

VLAN 高级技术 ——QinQ的配置

QinQ的概述&#xff1a; QinQ技术是一种扩展虚拟局域网&#xff08;VLAN&#xff09;数量空间的技术&#xff0c;通过在802.1Q标签报文的基础上再增加一层802.1Q的Tag来实现。以下是对QinQ技术的详细概述&#xff1a; QinQ技术的定义与背景 定义&#xff1a;QinQ&#xff08…

伍光和《自然地理学》电子书(含考研真题、课后习题、章节题库、模拟试题)

《自然地理学》&#xff08;第4版&#xff09;由伍光和、王乃昂、胡双熙、田连恕、张建明合著&#xff0c;于2018年11月出版。作为普通高等教育“十一五”国家级规划教材&#xff0c;本书不仅适用于高校地球科学各专业的基础课程&#xff0c;还可供环境、生态等有关科研、教学人…