力扣第一题:查找两数和,利用哈希表的做法 在做力扣第一题的时候我刚开始用了暴力循环写了两层循环去求和但是由于后续知识的学习我了解到哈希表的用处。哈希表在python中的表现是python的字典就是通过键值对来查找我们所需要的信息因此这道题我们的思想可以转变成通过用哈希表存放那么后续的循环就只需要一层再去哈希表中对比有无相同的数值。就这道题的简单理解如下# 假设题目是nums [2, 7, 5], target 9。 # 你的手里有一个空的小本本 hash_map {}。 # 第一轮遇到了数字 2 (下标0) # 先别急着记账 先看看小本本上有没有我要找的“另一半”。 # 我心里想我要凑成 9我现在是 2我需要找一个 7。 # 问小本本“你见过 7 吗” # 小本本“没见过空的。” # 那就记账 # 在本子上写下{2: 0} 意思是数字2在第0号位。 # 第二轮遇到了数字 7 (下标1) # 先别急着记账 先看看小本本上有没有我要找的“另一半”。 # 我心里想我要凑成 9我现在是 7我需要找一个 2。 # 问小本本“你见过 2 吗” # 小本本“见过 就在第 0 号位” # 任务完成 # 既然找到了直接把两个位置报出来[0, 1]。 # 游戏结束不用往后看了。from typing import List class Solution: def twoSum(self, nums: List[int], target: int) - List[int]: hash_map {} #相当于创建一个小本子里面去记录我见到过的东西和它的顺序 for i,element in enumerate(nums): #enumerate函数是用于取出可遍历对象的下标和它当前的元素的 diff target-element #这个操作是去算差值 if diff in hash_map: #这个就是去找小本本里面有没有之前记录过的数 return [hash_map[diff],i] #有的话就返回当时这个数的下标在字典里面根据键找值字典名[键名]i是当前下标 hash_map[element] i #没有的话就继续写入小本本里面方便后续查找

相关新闻

最新新闻

Stable Diffusion局部重绘:蒙版法精准控制AI艺术写真创作

Stable Diffusion局部重绘:蒙版法精准控制AI艺术写真创作

1. 项目概述:从“换脸”到“造梦”的AI艺术写真进阶 最近在玩Stable Diffusion的朋友,估计都绕不开一个话题:怎么用AI给自己或者朋友做一套独一无二的艺术写真?一开始,大家可能都停留在“文生图”阶段,输入…

2026/7/7 7:42:17
终极跨平台QSP游戏引擎:免费开源的一站式解决方案

终极跨平台QSP游戏引擎:免费开源的一站式解决方案

终极跨平台QSP游戏引擎:免费开源的一站式解决方案 【免费下载链接】JavaQuestPlayer 项目地址: https://gitcode.com/gh_mirrors/ja/JavaQuestPlayer 你是否曾经想玩一款有趣的QSP游戏,却发现没有合适的播放器?或者想要自己动手制作Q…

2026/7/7 7:42:17
Cookie安全漏洞深度解析:从Secure属性到全栈防御实践

Cookie安全漏洞深度解析:从Secure属性到全栈防御实践

1. 项目概述:一个被忽视的“低级”安全漏洞如果你负责过Web应用的安全加固或渗透测试,大概率在扫描报告里见过“Cookies Not Marked as Secure”这个漏洞。乍一看,它不像SQL注入或XSS那样充满“技术含量”,甚至有些报告会把它归为…

2026/7/7 7:42:17
3大核心技术揭秘:如何用Ryujinx在PC上完美运行Switch游戏

3大核心技术揭秘:如何用Ryujinx在PC上完美运行Switch游戏

3大核心技术揭秘:如何用Ryujinx在PC上完美运行Switch游戏 【免费下载链接】Ryujinx 用 C# 编写的实验性 Nintendo Switch 模拟器 项目地址: https://gitcode.com/GitHub_Trending/ry/Ryujinx 你是否曾梦想过在个人电脑上体验《塞尔达传说:旷野之息…

2026/7/7 7:42:17
Bedrock Launcher:超越官方启动器的Minecraft基岩版终极管理方案

Bedrock Launcher:超越官方启动器的Minecraft基岩版终极管理方案

Bedrock Launcher:超越官方启动器的Minecraft基岩版终极管理方案 【免费下载链接】BedrockLauncher 项目地址: https://gitcode.com/gh_mirrors/be/BedrockLauncher Bedrock Launcher是一款为Minecraft基岩版设计的专业级启动器,它解决了多版本管…

2026/7/7 7:42:17
ComfyUI整合包+KREA2模型:AI绘画环境一键部署与实战指南

ComfyUI整合包+KREA2模型:AI绘画环境一键部署与实战指南

🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 如果你正在为AI绘画的复杂环境配置头疼,特别是想要体验最新的KREA2模型却苦于繁琐的安装过程,那么萝卜大佬的最…

2026/7/7 7:37:16

月新闻