LeetCode:两数之和

题目描述:

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

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

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

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

C++源码:

相关推荐
今儿敲了吗几秒前
32| 伐木
数据结构·笔记·学习·算法
网小鱼的学习笔记几秒前
leetcode24: 两两交换链表中的节点
数据结构·链表
样例过了就是过了4 分钟前
LeetCode热题100 环形链表
算法·leetcode·链表
小米4968 分钟前
day5:92. 反转链表 II
数据结构·链表
努力学算法的蒟蒻9 分钟前
day95(2.24)——leetcode面试经典150
算法·leetcode·面试
ZPC821012 分钟前
window 下使用docker
人工智能·python·算法·机器人
DaisyMosuki14 分钟前
个人实现大数加减乘(高精度加减乘)
算法·高精度·大数
郭逍遥16 分钟前
[Godot] 通过AABB包围盒和射线法检测碰撞
算法·游戏引擎·godot
大黄说说18 分钟前
解锁 .NET 性能极限:深入解析 Span 与零拷贝内存艺术
java·数据结构·算法
知识即是力量ol19 分钟前
深入理解 Snowflake 雪花算法:原理、本质、趋势递增问题与分布式顺序困境全解析
java·分布式·算法·雪花算法·snowflake·全局唯一id·分布式id生成器