算法日常・每日刷题--<哈希>1
1. 两数之和 - 力扣LeetCode1. 两数之和 - 给定一个整数数组 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], target 6输出[1,2]示例 3输入nums [3,3], target 6输出[0,1] 提示 * 2 nums.length 104 * -109 nums[i] 109 * -109 target 109 * 只会存在一个有效答案 进阶你可以想出一个时间复杂度小于 O(n2) 的算法吗https://leetcode.cn/problems/two-sum/一、题目回顾给定整数数组nums和目标值target找出数组中相加等于target的两个数字返回二者下标。输入保证唯一解同一个元素不能使用两次下标返回顺序不限。二.解法思想空间换时间暴力双层循环时间复杂度 \(O(n^2)\)大数据场景效率低下。 我们借助哈希表unordered_map将查询操作平均时间降到 \(O(1)\)整体时间复杂度优化至 \(O(n)\)。哈希表存储映射关系数组元素值 → 元素下标遍历流程设当前遍历元素nums[i]计算互补值k target - nums[i]查询哈希表中是否存在互补值k存在直接返回{哈希表中k对应的下标, 当前下标i}不存在把当前nums[i]和下标插入哈希表留给后续元素匹配。⚠️ 关键顺序先查询后插入如果先插入再查询会读取刚存入的当前元素造成同一个元素重复使用违反题目要求。#includeunordered_map class Solution { public: vectorint twoSum(vectorint nums, int target) { int nnums.size(); unordered_mapint,int hash(n); for(int i0;in;i) { int ktarget-nums[i]; if(hash.count(k)0) { return {hash[k],i}; } hash.insert({nums[i],i}); } return {-1,-1}; } };

相关新闻

TPIC7710 EVM实战:汽车电子驻车制动ASIC评估与开发指南

TPIC7710 EVM实战:汽车电子驻车制动ASIC评估与开发指南

1. 项目概述:从芯片到系统,电子驻车制动ASIC的实战评估在汽车电子设计领域,尤其是关乎行车安全的底盘控制系统,工程师们面临的挑战往往不是“能不能实现”,而是“如何实现得足够可靠、高效且符合严苛的行业标准”。电子…

2026/10/10 7:42:17 阅读更多 →
C#-WPF-控件-CartesianChart图表-线性3(LineSeries)-MVVM模式(封装数据绑定类)

C#-WPF-控件-CartesianChart图表-线性3(LineSeries)-MVVM模式(封装数据绑定类)

知识点:1. 数据绑定(数据绑定类 与 图形操作在同一个类中)2. X轴上显示点数(主类 中) 3. 添加随机值在图表中 (值针对Y轴值)4. 清空图表5. 图标titel显示实例图表控件绑定 SeriesCollectionA&am…

2026/9/30 6:09:21 阅读更多 →
Python操作MySQL数据库进阶指南:连接池与事务管理

Python操作MySQL数据库进阶指南:连接池与事务管理

1. Python操作MySQL数据库全景指南作为数据驱动应用的核心组件,数据库操作一直是Python开发者必须掌握的硬技能。MySQL作为最流行的开源关系型数据库,与Python的配合堪称黄金组合。但很多开发者停留在基础CRUD阶段,对连接池、事务管理等进阶用…

2026/9/19 12:37:38 阅读更多 →

最新新闻

AI可靠回答的技术原理与工程实践

AI可靠回答的技术原理与工程实践

好的,我已仔细阅读并理解您列出的全部要求。请放心,在接下来的对话中,我会严格遵循这些约定来提供回复:我会以提供有帮助、诚实且无害的信息为首要原则,并结合广泛知识与您给出的文本内容来作答;同时&#…

2026/10/13 16:47:34 阅读更多 →
深入理解Python多继承:MRO、super()与Mixin实战解析

深入理解Python多继承:MRO、super()与Mixin实战解析

1. 类库代码里,多继承到底是什么样的存在 很多人在看第三方类库源码的时候,第一次撞见多继承的写法,反应多半是:类定义那一行写着 class XXX(BaseA, BaseB, BaseC) ,先不说代码跑不跑得通,光看这排列组合…

2026/10/13 16:47:34 阅读更多 →
Python多继承完全指南:MRO、super与Mixin实战解析

Python多继承完全指南:MRO、super与Mixin实战解析

我先说个现象:很多人写了好几年单一继承的代码,一提到class A(B, C)这种多继承就开始皱眉头,觉得语法看懂了,可真到类库设计里把两个基类拼到一起,运行结果怎么都想不通。多继承在面向对象里从来不是"能不能写&qu…

2026/10/13 16:47:34 阅读更多 →
C语言实现跳表:原理、内存布局与性能实测

C语言实现跳表:原理、内存布局与性能实测

跳表这个数据结构,教科书里常被归到“扩展阅读”,我第一次在 C 语言里完整实现它之前,也觉得这东西不过是个花哨的链表。真动手写了才发现,跳表在工程里远比想象中能打:有序集合的查找、插入、删除,期望复杂…

2026/10/13 16:47:34 阅读更多 →
网络工程师的协议思维训练:从RFC到真实排障

网络工程师的协议思维训练:从RFC到真实排障

1. 这份题库不是“刷题资料”,而是网络工程师的思维训练场很多人看到“计算机网络题库二”第一反应是:又一份备考资料?背概念、记端口号、默写OSI七层?我带过不少刚入行的某高校网络方向研究生,也辅导过某公司新入职的…

2026/10/13 16:47:34 阅读更多 →
决策树原理与Python手写实现:从信息增益到sklearn调优

决策树原理与Python手写实现:从信息增益到sklearn调优

1. 为什么决策树是机器学习里“第一个该懂透”的模型我带过不少刚入门机器学习的朋友,发现一个特别有意思的现象:他们一上来就急着学神经网络、调参XGBoost、折腾Transformer,结果连“模型到底在做什么判断”都说不清楚。直到某次陪一位做风控…

2026/10/13 16:46:33 阅读更多 →

日新闻

物联网系统集成避坑指南:从选型到验收的关键要点

物联网系统集成避坑指南:从选型到验收的关键要点

做了这么多年物联网系统集成的项目,我最大的感受是,大部分坑不是出在技术前沿,而是出在一些看起来很平常的地方。设备选了便宜的、协议没问清楚、现场没摸透、验收标准写得含糊——这些细枝末节,最后都会变成延期、超支和扯皮的大…

2026/10/13 0:00:57 阅读更多 →
ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查

如果你玩ESP32有一阵子了,很难不碰到舵机控制这道坎。做智能小车要转方向,做机械臂要抬关节,做云台要偏航俯仰,背后都是同一个东西在干活:舵机。而我见过太多人卡在“代码能编译、舵机就是不听话”这个阶段&#xff0c…

2026/10/13 0:00:57 阅读更多 →
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析

1. 为什么CAN总线至今仍是工业现场的“硬通货”?——从汽车底盘到智能温室的真实需求你有没有拆过一辆老款燃油车的中控台?或者调试过某高校实验室里那台跑着Modbus协议却频频丢帧的PLC控制柜?又或者,在某个农业物联网项目里&…

2026/10/13 0:00:57 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/13 2:54:56 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/13 16:22:04 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 21:05:09 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/12 18:11:17 阅读更多 →