LeetCode:两数之和

题目描述:

这是一道用暴力解法,逻辑十分简单、清晰的一道题,直接遍历数target-num[i]就行

而官方给了第二种巧妙的解法:运用哈希表。此法可将时间复杂度从O(N^2)降到O(1)

其思路是对于每一个 x,我们首先查询哈希表中是否存在 target - x,然后将 x 插入到哈希表中,即可保证不会让 x 和自己匹配。

哈希表在C++中用的是无序图(unordered_map),java中用的是图(map),Python中用的是字典(dict)

C++源码:

相关推荐
副露のmagic12 分钟前
更弱智的算法学习 day9
python·学习·算法
ULTRA??14 分钟前
RUST是移动语义与copy trait
算法·rust
小O的算法实验室14 分钟前
2022年AEI SCI1区TOP,用蚁群算法求解无人机配送车辆路径规划问题,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
迈巴赫车主16 分钟前
蓝桥杯 20531黑客java
java·开发语言·数据结构·算法·职场和发展·蓝桥杯
leoufung16 分钟前
LeetCode 427:Construct Quad Tree 题解与两种思路对比
算法·leetcode·职场和发展
阿拉伯柠檬16 分钟前
C++中的继承
开发语言·数据结构·c++·面试
蒙奇D索大22 分钟前
【数据结构】考研408 | 红黑树收官与B树启航:删除策略与多路平衡解析
数据结构·笔记·b树·考研·改行学it
sin_hielo23 分钟前
leetcode 3531
数据结构·算法·leetcode
zmzb010324 分钟前
C++课后习题训练记录Day48
数据结构·c++·算法
小毅&Nora28 分钟前
【后端】【工具】短信短链接如何做到“永不丢失“?从哈希冲突到百万QPS的可靠性设计
算法·哈希算法