LeetCode:两数之和

题目描述:

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

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

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

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

C++源码:

相关推荐
明月_清风14 小时前
算法时间复杂度:给小白的一堂"算快慢"课
后端·算法
vivo互联网技术14 小时前
TinySR:面向真实世界图像超分辨率的轻量级扩散模型
人工智能·算法
铅笔小新z15 小时前
【数据结构】顺序表和链表
数据结构·链表
不会就选b15 小时前
数据结构之栈的算法题(OJ)
linux·数据结构·算法
人工智能培训15 小时前
人工智能性别与地域偏见的成因及消解路径
大数据·人工智能·算法·生活
鹿角片ljp15 小时前
LeetCode 56:合并区间复盘|从排序思维到 List<int[]> 的简洁写法
算法·leetcode·list
M78佐菲16 小时前
Linux学习笔记:网络通信
linux·笔记·学习·算法
漂流瓶jz16 小时前
UVA-1609 不公平竞赛 题解答案代码 算法竞赛入门经典第二版
数据结构·算法·链表·贪心·aoapc·算法竞赛入门经典·uva
学习星球16 小时前
贪心算法精讲——贪心策略的“局部最优“如何通向全局最优?
算法·贪心算法