LeetCode:两数之和

题目描述:

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

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

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

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

C++源码:

相关推荐
超梦dasgg3 分钟前
并查集(Union-Find)详解 + Java 完整实现
java·数据结构·算法·图搜索
仍然.13 分钟前
算法题目---队列+宽搜(BFS)
算法·宽度优先
AbandonForce16 分钟前
从入门到入土:二分查找算法
数据结构·算法
L_090719 分钟前
【C++】数据结构之哈希表(散列表)
数据结构·c++·散列表
仰泳之鹅22 分钟前
【C语言】动态内存管理
c语言·数据结构·算法
心中有国也有家25 分钟前
CANN 学习新范式:cann-learning-hub 如何让昇腾入门不再「劝退」
人工智能·经验分享·笔记·学习·算法
LB211227 分钟前
C++通讯录课设(西安石油大学)
开发语言·c++·算法
AI算法沐枫27 分钟前
机器学习知识点:正则化
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
手写码匠27 分钟前
从零实现一个轻量级向量搜索引擎(Python 版)
人工智能·深度学习·算法·aigc
_Evan_Yao29 分钟前
数据结构太难了?用画图的方式理解链表和栈和树和图
数据结构·学习·链表