LeetCode题目:1. Two Sum

LeetCode算法题个人笔记【简单1-5】【c#和c++】 今天开始在算法打拼力 复制会出蜜汁bug,那正好手敲一遍题目熟练熟练,坚持下去看英文!没有以后再说 链接地址 第一题 : Two Sum Given an array of integers, return indices(index 的复数形式之一) of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, an 阅读详情

LeetCode题目:1. Two Sum

原题链接:https://leetcode.com/problems/two-sum/description/

解题思路:

核心思想:

用Hash函数h,使得对任意一个值value,h(value)和h(target-value)指向同一个位置,第一次进入该位置进行标记,当第二次进入该位置时,代表value和target-value在数组中同时出现,他们在数组中的位置即为答案。

代码细节:

1.用map容器代表Hash函数,map(value)=position(该value在数组的位置)。

2.数组遍历时,首先判断map(target-value)存不存在。如果存在(第二次进入),则value和target-value同时出现,而target-value在数组中的位置为map(value),即可得出结果。如果不存在(第一次进入),则将value存入到map。


坑点:

1.数据有负值

2.可能为0+0=0


代码:


    //#include <map>
    vector<int> twoSum(vector<int>& nums, int target) {

        map<int, int> hashTable;        // 用map代表hash表 
        vector<int> returnVec;          // 用于返回的vector
        for (int i = 0; i < nums.size(); i++) {
            // 若对应值不存在,插入hash表 
            if (hashTable.find(nums[i]) == hashTable.end())
                hashTable.insert(map<int, int>::value_type(target - nums[i], i));
            // 对应值存在,输出结果
            else {

                int leftPosition = hashTable[nums[i]];
                // 将位置返回 
                returnVec.push_back(leftPosition);
                returnVec.push_back(i);
                break;
            } 
        }
        return returnVec;

    }
leetcode解题笔记:Two sum系列解题思路 Two Sum 3Sum 3Sum Closest Two SumGiven an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, 阅读详情

相关推荐

Leetcode-How-What 力扣Leetcode刷题指南

Leetcode-How-What 力扣Leetcode刷题指南 About the way how to use Leetcode wisely for preparing the interview and the solutions to some Leetcode problems’. 怎样为准备面试机智聪明的刷题(高效刷题)以及一些题目的题解。 同 github 链接: https:/...

edwardwjz的博客 4532

LeetCode题目总结 1 Two Sum

题目: Given an array of integers, returnindicesof the two numbers such that they add up to a specific target. You may assume that each input would haveexactlyone solution, and you may not us...

qinmiaobingshuang的博客 101

1. Two Sum [easy] (Python)

题目链接https://leetcode.com/problems/two-sum/题目原文 Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have e

Coder_Orz的博客 1万+

leetcode two sum python_LeetCode题目1 Two Sum

方法1:采用了排序算法加上二分查找得到结果,最快需要O(nlogn)public class Solution {public int[] twoSum(int[] numbers, int target) {int[] arr = Arrays.copyOf(numbers, numbers.length);int[] result = new int[2];Arrays.sort(number...

weixin_39679664的博客 173

GEO数据库数据下载方法总结

#GEO数据下载 GEO是生信分析经常用到的数据库。经常需要从中获取表达矩阵,平台信息,meta信息等,本博文总结了几种下载GEO数据的方法,各有优劣,实际应用过程中自行选择适合自己的。 ##方法一:直接从浏览器中下载 以数据集GSE1001为例, 可以直接点击“Series Matrix Files”获取该样本txt格式的表达谱数据,一般我们认为这种处理过的表达谱数据是没有问题的,当然,具体情况具体分析。 打开下载的文件可以看到许多“#”开头的行,这些是注释信息,一般关注这些注释信息中的“data pr

sakoko_的博客 4万+

RFSoC应用XCZU47DR八发八收FPGA设计方案

本文介绍了基于Xilinx XCZU47DR RFSoC芯片的八发八收FPGA设计方案。该方案采用集成射频数据转换器的SoC架构,支持8路14bit ADC(5GSPS)和8路14bit DAC(9.85GSPS),可直接处理5GHz以下射频信号。硬件设计包含高性能输入缓冲器、QMC校正和复杂混频器,适用于5G/6G通信、雷达、卫星通信等领域。文章详细阐述了ADC/DAC子系统参数,包括通道配置、采样率、带宽等特性,并提供了FPGA顶层模块的硬件接口设计,展示了多通道数据收发处理能力。该方案无需外置混频器,

toonyhe的博客 1792

【python】【leetcode】【算法题目1—Two Sum】

【python】【leetcode】【算法题目1—Two Sum】 Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution. 输入一个整型列表,以及一个目标值,返回该列表中加和为目标值的两个数的下标

一只奋斗的小虫的博客 389

华为服务器RAID配置避坑指南:如何通过iBMC快速识别阵列卡型号并完成初始化

本文详细解析华为服务器RAID配置全流程,重点介绍通过iBMC快速识别阵列卡型号、硬盘健康诊断及RAID级别选择的场景化策略。提供从iBMC登录到缓存策略调优的实战技巧,帮助工程师避免常见配置陷阱,提升服务器存储系统性能和稳定性。

weixin_28475533的博客 492

< 题目 > LeetCode - 1. Two Sum

1.Two Sum 2017.9.28 Kevin Song

Kevin Song Homepage 233

ArcGIS数据处理必备技能:从地理坐标到UTM投影的面转栅格完整流程

本文详细介绍了在ArcGIS中从地理坐标到UTM投影的面转栅格完整流程,包括坐标系转换、像元大小设置及质量控制等关键步骤。通过实战案例和Python脚本示例,帮助用户解决常见问题并优化数据处理效率,特别适合需要精确GIS数据分析的专业人士。

weixin_42628688的博客 180

金融科技风险管理实践之监管评级全解

内部审计是公司治理的四大基石之一。因此,建议银行以问题与结果为导向,推动科技风险分级分类管理,重点防范重大中断、重大事件,并进一步加强科技风险评估与监测,加强对重要管理流程、重要系统、网络等重点管控环节的评估监测,对于评估发现的问题,及时完善管理手段,举一反三解决问题,提高风险管理的有效性。投入更多审计资源,加大对重点机构、薄弱环节、重要领域的审计力度,如:加强对境外机构的审计,加强网络安全、数据安全、业务连续性等高风险领域审计,加强数字化转型过程中的风险审计,以高水平安全,为数字金融高质量发展保驾护航。

银行信息系统应用架构详解 454

13.leetcode题目1: Two Sum

又是好几天没刷题了,这几天零零碎碎的面试。。。 Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution

hzj的博客 415

【数据集】全球陆地表面反照率Albedo

【数据集】全球陆地表面反照率Albedo

WW、forever的博客 1454

leetcode 1-100 easy难度题目汇总

主要是考虑到easy题目没什么好分析的, 故统一总结在一篇文章里. 留作记录. 收录leetcode1文章目录1. Two Sum (Easy)7. Reverse Integer (Easy)9. Palindrome Number (Easy)13. Roman to Integer (Easy)14. Longest Common Prefix (Easy)20. Valid Parenth...

Bean771606540的博客 1516

基于STM32XX的LCD液晶显示屏(HS19264G06A、驱动芯片:ST7525)驱动C程序设计

define USE_HW_SPI 1 // 1:使用硬件SPI, 0:使用软件模拟SPI。

myron6688的博客 236

Access查询中的Dlookup函数的妙用

在Microsoft Access中,处理和分析数据的过程中,常常会遇到需要根据条件从其他记录中提取特定数据的情况。这时候,Dlookup函数就成了开发者和数据分析师的得力助手。今天我们将通过一个具体的实例,详细探讨如何利用Dlookup函数来解决复杂的查询问题。

m0_62153576的博客 295

Leetcode题目分析 1.Two Sum

这道题可以利用HashMap轻松解决。把当前的数字作为Key,当前数字在数组中的下标作为Value放入HashMap中,每次判断target-nums[i]是否存在即可。 只需要遍历一遍数组,所以算法复杂度为o(n)。 public class Solution { public int[] twoSum(int[] nums, int target) { Map<Integ

huiya9527的博客 233

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

LeetCode题目解析(一):1、two sum

1、两数和 问题描述: 给定一个整数数组与一个目标数,从数组中找出两个数使得这两个数之和为目标数,返回他们的下标(假定答案唯一且一个数只能被使用一次) 问题分析: 这题表面上看需要遍历数组中两两之和,并与目标进行比较,需要O(n²)的时间复杂度。但我们只需要利用哈希表就可以将时间复杂度降到O(n)。 首先定义一个哈希表(即c++的map),把值作为key,把下标作为value,遍历数组,...

Kiritoku的博客 517

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Leetcode ☞ 1. Two Sum ☆ 【Hashmap】

给一数组和一target数,有两个元素的和为target。求这两个元素的下标的和。

Dr_Unknown的博客 984

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

[LeetCode] No.1 Two Sum

“做程序员太辛苦了,我想换行……我该怎么办?” “敲一下回车。” Two Sum(两数之和) 题目: Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would...

但行好事 莫问前程 348

算法:两个数的和等于指定值1. Two Sum

LeetCode全集请参考:LeetCode Github 大全 题目 1. Two Sum Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the

AI架构师易筋 524

leetcode 题解 (1-500题,持续更新,part 1)

除了前面25道题目,为了省时间,后面只做hard的题目 part1包含了1000题以内的题目(未加锁部分hard题) 500-1000见LeetCode题解part2 1000题以上的见LeetCode题解part3 1. Two Sum (Easy) 题意:给一个数组和一个数,求数组中哪两个数的和为这个数 题解:先排序,然后两个指针扫。容易证明这是可以的。因为如果当前的某个指针和已...

kdh的专栏 1902

Leetcode学习笔记:#1 Two Sum

Leetcode学习笔记:#1 Two Sum Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and yo...

ccystewart的博客 209

终极苹果面试题指南:1年高频LeetCode题目分类与实战策略

GitHub_Trending/le/LeetCode-Questions-CompanyWise项目是一个按公司分类整理的LeetCode题目集合,特别针对苹果公司近1年的面试高频题提供了详细的分类指南。这份精选资料包含了苹果面试中最常出现的算法题目,按照频率、难度和类型进行系统整理,帮助求职者高效备战苹果技术面试。 ## 🍎 苹果面试题整体分析 苹果公司的技术面试以算法题为主,注重考察候

gitblog_00841的博客 1023

LeetCode 1. Two Sum 题解

本题是算法的经典入门问题,主要考察对哈希表的理解和应用。通过使用哈希表,我们可以将时间复杂度从 O(n²) 降低到 O(n),大大提高了算法的效率。哈希表的核心思想是:通过哈希表来存储已经遍历过的元素及其下标,这样当我们遍历到当前元素时,可以在 O(1) 的时间复杂度内检查目标值与当前元素的差值是否已经存在于哈希表中。这种方法不仅适用于两数之和问题,还可以应用于许多其他需要快速查找元素的场景。掌握哈希表的使用,对于解决这类问题非常重要。

cannonjinx的博客 4192
上一篇: (Verilog)多周期CPU设计
下一篇: LeetCode题目:2. Add Two Numbers
MyCodecOdecoDecodE
博客等级 码龄10年 66粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值