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

LeetCode 两数之和题解

LeetCode 两数之和题解

题目描述

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

示例

输入:nums = [2,7,11,15],target = 9
输出:[0,1]

解题思路

方法:哈希表

思路

  • 使用哈希表来解决这个问题。
  • 遍历数组,对于每个元素,计算目标值减去当前元素的值(补数)。
  • 如果补数在哈希表中,返回补数的索引和当前元素的索引。
  • 如果补数不在哈希表中,将当前元素和其索引存入哈希表。

复杂度分析

  • 时间复杂度:O(n),其中 n 是数组的长度。每个元素最多被访问一次。
  • 空间复杂度:O(n),需要额外的空间来存储哈希表。

代码实现

方法:哈希表

# 两数之和(哈希表) def two_sum(nums, target): hash_map = {} for i, num in enumerate(nums): complement = target - num if complement in hash_map: return [hash_map[complement], i] hash_map[num] = i return [] # 测试 def test_two_sum(): nums = [2, 7, 11, 15] target = 9 print(two_sum(nums, target)) # 输出:[0, 1] nums = [3, 2, 4] target = 6 print(two_sum(nums, target)) # 输出:[1, 2] if __name__ == "__main__": test_two_sum()

测试用例

测试用例 1:基本情况

输入:nums = [2,7,11,15],target = 9
输出:[0,1]

测试用例 2:不相邻元素

输入:nums = [3,2,4],target = 6
输出:[1,2]

总结

两数之和是一个经典的哈希表问题,它可以通过哈希表来高效地解决。

哈希表法的核心思想是:遍历数组,对于每个元素,计算目标值减去当前元素的值,如果补数在哈希表中,返回结果;否则将当前元素存入哈希表。

掌握哈希表的使用方法,对于解决类似的问题非常重要。

http://www.jsqmd.com/news/777632/

相关文章:

  • 3大技术痛点解析:猫抓cat-catch如何实现浏览器扩展的高效资源管理与技术实现
  • VR技术发展:从硬件瓶颈到沉浸式体验的未来突破
  • 如何快速实现NCM转MP3格式转换:3个高效秘诀让音乐真正属于你
  • 合肥企业短视频运营困局破解方案:2026年AI全网推广与GEO优化完整指南 - 优质企业观察收录
  • 云原生应用边缘计算实践:从设计到落地
  • 动手学深度学习(PyTorch版)深度详解(15):深度学习工具(含实操避坑 + 学习计划)
  • KH Coder终极指南:无需编程的文本挖掘神器
  • 从手动复制到智能捕获:猫抓如何重塑你的浏览器视频管理体验
  • ColabFold:让蛋白质结构预测像使用搜索引擎一样简单
  • Unitree_RL_Gym 项目(2):Deploy 项目模块深度技术解析
  • 3分钟搞定Figma中文界面:设计师必备的免费翻译插件指南
  • 普拉提培训哪家性价比高?2026 高性价比机构推荐 - 品牌2025
  • 网盘直链下载助手:八大网盘一键解析免费下载终极指南
  • 罗技鼠标宏终极配置指南:3步实现PUBG无后座力射击
  • SkeyeVSS开发FAQ: 磁盘满与录像落盘策略
  • 小红书内容批量下载终极指南:XHS-Downloader 3种运行模式全解析
  • 中小团队如何通过Taotoken统一管理多个AI模型的API成本
  • Python 上下文管理器与 with 语句:从入门到精通
  • 【含五月安装包】Windows平台OpenClaw 2.6.6可视化安装避坑技巧与高效配置方法
  • 豆包 Seedream 4.0|4K多模态一站式图像创作|文生图图像编辑双榜第一
  • Windows 8系统克隆与备份实战:UEFI/GPT环境下的可靠恢复方案
  • ComfyUI-Florence2:5分钟掌握微软最强视觉AI,零代码搞定15种图像任务
  • 2026 大理丽江婚纱照口碑盘点:高端定制必看,风屿来信稳居品质榜首 - 深度智识库
  • QrScan:企业级离线二维码批量检测识别架构解析与深度优化方案
  • 3种部署方案:使用Tsukimi构建高效媒体管理平台
  • 奇点大会未公开议程泄露(内部版):AISMM v2.1新增“语义越狱识别模块”与联邦学习中的梯度泄露熔断机制详解
  • 基于实数编码遗传算法的订单驱动市场最优交易路径规划,MATLAB代码
  • CompressO:高效智能的跨平台媒体压缩解决方案,让你的大文件瞬间变小90%
  • 南京新百卡怎么回收,选择渠道不对,差别可大了 - 淘淘收小程序
  • 如何解决BT下载龟速?85个公共Tracker一键配置终极指南