【数组】-Lc1-两数之和

写在前面

  最近想复习一下数据结构与算法相关的内容,找一些题来做一做。如有更好思路,欢迎指正。


目录

  • 写在前面
  • 一、场景描述
  • 二、具体步骤
    • 1.环境说明
    • 2.代码
  • 写在后面


一、场景描述

  给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

示例:
给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]

二、具体步骤

1.环境说明

名称说明
IntelliJ IDEA2019.2

2.代码

以下为Java版本实现:


public class Lc1_twoSum {public static void main(String[] args) {int[] nums = {2, 7, 11, 15};int target = 9;int[] result = twoSum(nums, target);System.out.println(Arrays.toString(result));}/*** O(n)** 思路:循环 + map** 返回值是int[]* 二数之和可以结合map变成二数之差** 定义一个map(key为数组中的值,value为key在数组中的位置)* 循环数组,得到nums[i], remain = target - nums[i]* 判断remain是否在map中*      是,返回i以及map.get(remain)*      否则,添加到map中* 循环结束,则为找不到这样的值**/private static int[] twoSum(int[] nums, int target) {Map<Integer, Integer> map = new HashMap<>();for (int i = 0; i < nums.length; i++) {// 用target-当前值,然后判断map中是否包含int remain = target - nums[i];if (map.containsKey(remain)) {return new int[]{map.get(remain), i};}map.put(nums[i], i);}throw new IllegalArgumentException("no solution");}
}

写在后面

  如果本文内容对您有价值或者有启发的话,欢迎点赞、关注、评论和转发。您的反馈和陪伴将促进我们共同进步和成长。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python print函数的使用

Python中print函数的完整使用方法如下&#xff1a; print(*objects, sep , end\n, filesys.stdout, flushFalse)objects&#xff1a;这是print函数的主要输出内容&#xff0c;可以是一个或多个对象&#xff0c;如字符串、数字、变量等。当传入多个对象时&#xff0c;print函数…

特殊符号+彩色表情符号大全

特殊符号彩色表情符号大全 1、常用符号2、特殊符号3、编号序号4、数学符号5、爱心符号6、标点符号7、单位符号8、货币符号9、箭头符号&#xff08;含推导&转换符号&#xff09;10、符号图案11、希腊字母12、俄语字母13、汉语拼音14、中文字符15、日文符号16、制表符号17、皇…

Python与GPU编程快速入门(六)

文章目录 8、常量内存(Constant Memory)9、并发访问GPU9.1 在同一GPU上同时执行两个内核9.2 Stream同步9.3 使用流和事件测量执行时间8、常量内存(Constant Memory) 常量内存是只读缓存,其内容可以广播到块中的多个线程。 在常量内存中分配的变量需要使用特殊的__constan…

Mysql 效率优化

MySQL 是一种开源的关系型数据库管理系统&#xff0c;常用于 Web 应用程序的数据存储。在应用程序的开发和运维过程中&#xff0c;MySQL 的性能和效率往往是需要重点关注的问题。以下是一些 MySQL 的效率优化技巧&#xff1a; 优化 SQL 语句&#xff1a;合理设计 SQL 查询语句可…

中式言情短剧APP力压TikTok荣登美国下载榜一!外国人也难逃“霸总爱上我”的狗血剧?

开局退婚、豪门恩怨、霸道总裁爱上我……这些由中国团队拍摄、外国演员出演的竖屏霸总短剧&#xff0c;正在海外收割市场。 01 ReelShort力压TikTok冲上美国榜一 TKFFF获悉&#xff0c;国内数字出版企业中文在线旗下短剧App ReelShort日前力压TikTok冲上美国iOS娱乐榜第1名&…

[Matlab有限元分析] 2.杆单元有限元分析

1. 一维杆单元有限元分析程序 一维刚单元的局部坐标系&#xff08;单元坐标系&#xff09;与全局坐标系相同。 1.1 线性杆单元 如图所示是一个杆单元&#xff0c;由两个节点i和j&#xff0c;局部坐标系的X轴沿着杆的方向&#xff0c;由i节点指向j节点&#xff0c;每个节点有…

唯品会年度特卖大会㊙内购清单㊙

唯品会年度特卖大会㊙内购清单㊙ 内部员工亲友专享&#xff0c;实实在在省钱&#xff0c;❌抢完不补! 今晚8点开抢&#xff0c;提前收藏>> https://t.vip.com/Im3KlTnDSJ8 2023年唯品会年度特卖大会热门会场推荐 1.唯品会年度特卖大会 限时加码!瓜分百万津贴!抢海量…

【软件测试】白盒测试和黑盒测试

一、软件测试基本分类 一般地&#xff0c;我们将软件测试活动分为以下几类&#xff1a;黑盒测试、白盒测试、静态测试、动态测试、手动测试、自动测试等等。 黑盒测试 黑盒测试又叫功能测试、数据驱动测试或给予需求规格说明书的功能测试。这种测试注重于测试软件的功能性需…

什么是木马

木马 1. 定义2. 木马的特征3. 木马攻击流程4. 常见木马类型5. 如何防御木马 1. 定义 木马一名来源于古希腊特洛伊战争中著名的“木马计”&#xff0c;指可以非法控制计算机&#xff0c;或在他人计算机中从事秘密活动的恶意软件。 木马通过伪装成正常软件被下载到用户主机&…

【laBVIEW学习】4.声音播放,自定义图标,滚动条设置

一。声音播放&#xff08;报错&#xff0c;未实现&#xff09; 1.报错4810 2.解决方法&#xff1a; 暂时未解决。 二。图片修改 1.目标&#xff1a;灯泡---》自定义灯泡 2.步骤&#xff1a; 1.右键点击--》自定义运行 表示可以制作自定义类型 2.右键--》打开自定义类型 这样就…

Python streamlit指南,构建令人惊叹的可视化Web界面!

更多资料获取 &#x1f4da; 个人网站&#xff1a;ipengtao.com 在当今数据驱动的世界中&#xff0c;构建交互式、美观且高效的数据可视化应用变得至关重要。而Streamlit&#xff0c;作为Python生态系统中为开发者提供了轻松创建Web应用的利器。 本文将深入探讨Streamlit的方…

一次显著的性能提升,从8s到0.7s

前言 最近我在公司优化了一些慢查询SQL&#xff0c;积累了一些SQL调优的实战经验。 我之前写过一些SQL优化相关的文章《聊聊SQL优化的15个小技巧》和《explain | 索引优化的这把绝世好剑&#xff0c;你真的会用吗&#xff1f;》&#xff0c;在全网广受好评。 这篇文章从实战…

Oracle数据库连接,TNS描述符与连接字符串

前言&#xff1a;在现代应用程序开发中&#xff0c;与数据库建立可靠、高效的连接是至关重要的一环。在Oracle数据库中&#xff0c;Transparent Network Substrate&#xff08;TNS&#xff09;提供了一种强大的网络服务&#xff0c;使得客户端能够通过逻辑服务名连接到数据库&a…

Intellij IDEA 的安装和使用以及配置

IDE有很多种&#xff0c;常见的Eclipse、MyEclipse、Intellij IDEA、JBuilder、NetBeans等。但是这些IDE中目前比较火的是Intellij IDEA&#xff08;以下简称IDEA&#xff09;&#xff0c;被众多Java程序员视为最好用的Java集成开发环境&#xff0c;今天的主题就是IDEA为开发工…

linux服务器防火墙知识学习

# 查看rich-rules 查看所有防火墙已注册的规则 [roothcss-ecs-8b3c ~]# firewall-cmd --list-rich-rules rule family"ipv4" source address"xxx.xxx.xx.xx" accept# 每次设定完规则相关后&#xff0c;都需要<reload>防火墙 [roothcss-ecs-8b3c ~]…

【模板】KMP算法笔记

练习链接&#xff1a;【模板】KMP - 洛谷 题目&#xff1a; 输入 ABABABC ABA 输出 1 3 0 0 1 思路&#xff1a; 根据题意&#xff0c;用到的是KMP算法&#xff0c;KMP算法思想是通过一个一个匹配首字母的原理进行整个匹配效果&#xff0c;当某个首字母不匹配的时候&#x…

系列十七、各种各样的bean

一、Spring bean 1.1、概述 一句话&#xff0c;被Spring容器管理的bean就是Spring bean。 二、Java bean VS Spring bean 2.1、概述 Java bean是程序员自己new 出来的&#xff0c;Spring bean是Spring工厂创建出来的。 三、配置bean的方式 3.1、概述 所谓配置bean&#xff0…

jetson nano SSH远程连接(使用MobaXterm)

文章目录 SSH远程连接1.SSH介绍2.准备工作3.连接步骤3.1 IP查询3.2 新建会话和连接 SSH远程连接 本节课的实现&#xff0c;需要将Jetson Nano和电脑保持在同一个局域网内&#xff0c;也就是连接同一个路 由器&#xff0c;通过SSH的方式来实现远程登陆。 1.SSH介绍 SSH是一种网…

魔珐科技:3D虚拟人AIGC原生产品,助力全新商业机遇

11月28日-29日&#xff0c;WISE2023 商业之王大会在北京国际会议中心成功举办。此次大会以“太阳照常升起&#xff08;The Sun Always Rises&#xff09;”为主题&#xff0c;活动汇聚了全商业领域知名企业&#xff0c;围绕前沿趋势&#xff0c;共话商业创新之策。 在本次论坛…

Python 字典深度解析:键值对的妙用与高级操作

字典&#xff08;Dictionary&#xff09;是Python中一种强大的数据结构&#xff0c;以键值对&#xff08;key-value pairs&#xff09;的形式存储数据。深入理解字典的基本操作以及高级应用&#xff0c;将使你更好地利用这一灵活而高效的工具。 基本概念 字典是无序、可变的数…