LeetCode:两数之和

题目描述:

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

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

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

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

C++源码:

相关推荐
Doraemomo13 小时前
数据结构-内存调试工具
数据结构
橘和柠14 小时前
知识图谱实战(一):数据采集与实体关系抽取(完整代码)
算法
Mem0rin14 小时前
前缀和:中心下标与数组乘积
数据结构·算法
Lazionr14 小时前
list容器详解——双向链表的封装与使用
数据结构·c++·链表·list
windliang14 小时前
Claude Code 源码分析(八):Memory 如何被写入、整理与按需召回
前端·算法·面试
漂流瓶jz14 小时前
UVA-12174 Shuffle的播放记录 题解答案代码 算法竞赛入门经典第二版
数据结构·c++·算法·图论·滑动窗口·算法竞赛入门经典·uva
Forever Nore14 小时前
LeetCode 6 Z 字形变换 - 按行模拟
算法·leetcode
lingran__14 小时前
C++ 高阶数据结构:红黑树万字详解|完整原理推导 + 插入实现 + 完整性校验【STL 底层】
数据结构·c++·面试·红黑树·二叉搜索树·平衡二叉树·stl底层
fkyyly15 小时前
hermes解读
算法·code_agent
过期的秋刀鱼!15 小时前
使用都热编码的分类特征
人工智能·算法·决策树·机器学习·分类·数据挖掘