LeetCode:两数之和

题目描述:

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

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

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

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

C++源码:

相关推荐
xu_yule9 分钟前
算法基础(数论)—算法基本定理
c++·算法·算数基本定理
CoderCodingNo36 分钟前
【GESP】C++五级真题(结构体排序考点) luogu-B3968 [GESP202403 五级] 成绩排序
开发语言·c++·算法
浅川.251 小时前
STL专项:stack 栈
数据结构·stl·stack
YGGP2 小时前
【Golang】LeetCode 32. 最长有效括号
算法·leetcode
自然常数e2 小时前
字符函数和字符串函数
c语言·算法·visual studio
youngee112 小时前
hot100-56最小栈
数据结构
leaves falling2 小时前
c语言分数求和
算法
Das12 小时前
【机器学习】01_模型选择与评估
人工智能·算法·机器学习
星轨初途3 小时前
郑州轻工业大学2025天梯赛解题
c++·经验分享·笔记·算法·链表·剪枝