算法--两数之和

华为OD机试真题 新系统【查找能被整除的最大整数】 华为OD新系统机试真题【查找能被整除的最大整数】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【查找能被整除的最大整数】 阅读详情

描述

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

示例:

给定 nums = [2, 7, 11, 15], target = 9
因为 nums[0] + nums[1] = 2 + 7 = 9
所以返回 [0, 1]
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/two-sum
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

思路

1.设定一个map集合,存放中间数组。
2.循环数组,在循环内,设定一个整形变量temp,它等于目标值-数组的当前循环到的数字对应的值。
3.判断map是否包含这个整形变量值,如果包含就可以输出这个结果。如果不包含,就把当前循环到的数字对应的值和当前循环的数字存储到map集合里。
4.继续进行循环,直到循环结束。
5.如果循环结束后还没有找到,就抛出错误异常:没有两个数字的结果,需要修订输入的数值或者目标。

实现

    public int[] twoSum(int[] nums, int target) {
            Map<Integer,Integer> map = new HashMap();
            for(int i = 0;i< nums.length;i++){
                int temp = target - nums[i];
                if(map.containsKey(temp)){
                    return new int[]{map.get(temp),i};
                }
                map.put(nums[i],i);
            }
            throw new IllegalArgumentException("No two sum solution");
        }
}
基于PPT的三维光路结构示意图绘制实例演示-技术细节 阅读详情

相关推荐

【遥感数字图像处理(朱文泉)】第一章 数字图像基础

关于图像的定义、类型、模拟图像和数字图像

甜子yu的博客 4403

LeetCode算法题第1题--两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。判断第一次得到的数字与第二次得到的数字相加是否等于target,如果等于,使用数组API。解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。2、使用for循环对nums进行第一次遍历,然后在该循环内使用第二次for循环遍历。输入:nums = [2,7,11,15], target = 9。你可以假设每种输入只会对应一个答案。

weixin_58017699的博客 314

《算法第四版》学习心得一——怎么学算法

 一、算法的两个核心 算法的核心内容实际上有两个: 算法的概念和思路。 算法的编程实现。 两者相互关联影响,缺一不可。 不理解基本概念和思路,就算把实现代码背下来,也无济于事,因为脑袋里依然是一片模糊。理解了概念和思路,不去用代码实现,脑袋里有的只是概念,无法根据真实需求实现解决方案。 二、学算法需要什么基础 首先,必须要有一定的编程语言基础,要理解语言中最基本的概念:数据类型,类,成...

illikang的博客 3909

算法:两数之和(two-sum)。

给定一个整数数组 nums和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。

孤芳不自赏 1万+

【Android】汽车电源管理:深入解析CarPowerManager与Suspend To RAM的交互机制

本文深入解析了Android Automotive OS中CarPowerManager与Suspend To RAM(深度睡眠)的交互机制。详细阐述了从车辆发出睡眠请求,到CarPowerManagementService协调应用状态,最终通过内核进入低功耗睡眠的完整流程,并探讨了唤醒机制、开发者实践及功耗优化策略,为车机应用开发与系统优化提供关键指导。

weixin_28339967的博客 289

02-Cesium-实现天地图标记

首先天地图申请token,然后Cesium-实现天地图标记详细说明

m0_62785037的博客 1171

计算两个数之和并输出

键盘输入两个一位十进制数(有提示输入), 编程计算他们的和, 并将结果分别以二进制、十进制和十六进制的形式显示到CRT上。 扩展:做一个菜单,选1,2,3,4分别输出及退出) data segment menu db "1 print decimal", 0dh,0ah ;定义菜单 db "2 print hexadecimal", 0dh,0ah db "3 print binary", 0dh,0ah db "4 exit", 0dh,0ah,'$' msg1 db "please

TYA_Saras的博客 1534

【Linux内核】Linux内核裁剪完全指南:从理论到实战的系统优化

在嵌入式设备、专用服务器和物联网系统日益普及的今天,如何让Linux系统在资源受限的环境中高效运行成为开发者必须面对的问题。Linux内核裁剪正是解决这一问题的关键技术,它通过移除不必要的内核组件,打造出更精简、更安全、更高效的自定义操作系统。本文将系统全面地介绍Linux内核裁剪的完整流程和实用技巧,帮助您掌握这一核心技能。Linux内核裁剪是一项结合技术知识与实践经验的系统工程。明确需求:裁剪前必须清晰了解目标系统的硬件配置和功能需求。循序渐进:采取小步修改、反复测试的策略,避免一次性大幅修改。

撬动未来的支点的专栏 1387

两数之和算法

两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。 示例 2: 输入:nums = [3,2,4], t

Jhuolongguo的博客 551

ScottPlot vs LiveCharts:WPF图表库性能对比与MVVM适配方案

本文深度对比了WPF图表库ScottPlot与LiveCharts在性能与MVVM架构适配上的表现。通过十万级数据点的基准测试,ScottPlot在渲染速度与内存占用上优势显著。文章重点探讨了两种库在MVVM模式下的集成方案,为开发者根据项目需求(如实时监控或快速原型)进行技术选型提供了实战指导。

lll78的博客 245

YOLOv11 模型改进全流程:从代码修改到性能跃升,让你打造专属检测利器

无论是科研中需要发表创新点满满的论文,还是企业里要解决特定场景的检测难题,这套方法都能让你在YOLOv11的基础上打造出“量身定制”的检测模型。别再让通用模型的“平庸性能”限制你的项目上限——现在就动手修改代码,让你的YOLOv11模型在精度、速度或小样本适应能力上实现跨越式提升,用技术突破证明你的AI研发实力!本文将带你从代码层面入手,完成从骨干网络到损失函数的全维度改进,真正掌握让YOLOv11“为你所用”的技术实力。该改进对小样本类别(如数据集中仅占5%的“稀有缺陷”)的识别精度提升显著。

m0_71589036的博客 402

两数之和 暴力美学 哈希表

1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。 leetcode 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。 你可以按任意顺序返回答案。 示例 1: 输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。 示例 2: 输入:nums = [3,2,4],

Gestwr博客 670

红米k60 修复“NV损坏” 去除主板校验电阻步骤解析与图示

红米k60 基带代码:mondrian。搭载‌高通骁龙8+ Gen1处理器.国外版本称:POCO F5 Pro适用于以下型号的小米机型:23013RK75C, 23013PC75G。 💝💝💝通过博文了解 1💝💝💝-----此机型修复NV损坏硬件类操作主板图示 2💝💝💝-----了解设备出现NV损坏的底层逻辑 3💝💝💝 ------具体修改步骤

小马哥的专栏 391

算法两数之和

在算法设计领域,“两数之和”是一个非常经典的问题,它不仅考察了对数据结构的理解,还测试了编程者解决实际问题的能力。本文将深入探讨“两数之和”的多种解决方案,包括但不限于暴力解法、哈希表方法以及双指针技巧,并通过具体的代码实例来展示每种方法的应用场景和优劣分析。希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。更高效的解决方案是利用哈希表存储已经遍历过的数字及其索引,当遍历到新的数字时,可以快速判断目标值减去当前值的结果是否已经在哈希表中存在。

一个做过前端开发的产品经理,经历过睿智产品的折磨导致脱发之后,励志要翻身"农奴"把歌唱,一边打入敌人内部一边持续提升自己,为我们广大开发同胞谋福祉,坚决抵制睿智产品折磨我们码农兄弟! 841

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

【算法】两数之和

/** * 两数之和(从整型数组中找出两数,和为目标数) * @author DUSTDAWN * */ public class Solution_5 { public static void main(String[] args) { int nums[] = {2,7,11,15}; System.out.println("["+twoSum(nums,9)[0]+","+...

dustdawn的博客 1240

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

双指针算法·两数之和·三数之和

双指针典型题目

qq_75270497的博客 1101

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

[算法] 两数之和,三数之和,四数之和,n数之和

给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。(leetcode1) 方法1:暴力法 思路:对数组进行两次for循环,时间复杂度O(n2)O(n2)O(n^2) class Solution { public: vector&amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;int&amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; twoSum

四月晴 9875

双指针算法篇:两数之和 、三数之和

我们依旧使用左右指针的方法,需要先确定一个值,在这里我们用i来表示,nums[i]来做第一个值,每次循环时,使用target=-nums[i]来记录,以上就是两数之和和三数之和的解题思路,至于后面的四数之和,思路也与上面一致 ,先排序,然后依次确定第一,第二,第三,第四个数,并注意去重。当调整完后,如果值与上一个值相同,那么结果也肯定是相同的,所以要跳过相同的值,同时也要注意i的去重。我们先对数组进行排序,这样有利于返回数组的去重工作,因为有序状态下,重复的三元组中的顺序是一样的。

decade777555的博客 1700

算法 —— 两数之和,三数之和,四数之和

两数之和 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 方法一:...

rd_w_csdn的博客 810

【算法】【leetcode】两数之和,两数相加

/* 两数相加 1.链表相当于从个位往上数,计算每一位的和,记录进位,创建节点。 2.使用队列,计算好各位的值,统一创建节点(跟第一个其实差不多) */ function ListNode(val, next) { this.val = val === undefined ? 0 : val; this.next = next === undefined ? null : next; } var addTwoNumbers_2 = function (l1, l2)

qq_34838046的博客 388

算法题分享:两数之和

最近在整理高频算法题库,帮助星球学员更好的找工作。后面会陆续分享一些高频的算法题。今日算法题分享:两数之和。

分享 Go、云原生、AI Infra 相关技术 668

【算法系列-哈希表】两数之和(Map)

这道题使用哈希表中的map结构来解决问题,不过开始之前我们需要理清楚为什么要使用哈希表,什么时候用哈希表:当我们需要判断一个元素之前是否出现过 或 一个元素是否存在于一个集合中时,可以使用哈希表;

Mwt258的博客 1559

算法之两数之和

下面要分享的是一道来自leetcode的简单算法题,提供了三种解题思路,分享给大家。 使用语言:JavaScript 题目: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 给定 nums = [2, 7, 11, 15], targ...

huangyangquan3的博客 304

两数之和 三数之和【基础算法精讲 01】

灵神算法基础算法精讲[01] : 两数之和 三数之和【基础算法精讲 01】_哔哩哔哩_bilibili力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 代码(c++): 三数之和 链接 : 三数之和假设满足条件的三个数的下标分别为i , j, k,且默认i

ros275229的博客 236

算法笔记-两数之和、三数之和、四数之和(LeetCode)

两数之和 1.两数之和 题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 代码: /** * Note: The returned array must be malloced

qq_46672746的博客 401

算法二:两数之和

一天一算法

weixin_40741512的博客 169
上一篇: 设计模式-- 备忘录模式
下一篇: 算法--排序数组中位数
CodersCoder
博客等级 码龄10年 90粉丝 258原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值