算法打卡01——求两数之和

题目:

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

你可以按任意顺序返回答案,如:

做法:

暴力解法:

class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
        n = len(nums)
        for i in range(n):
            for j in range(i + 1, n):
                if nums[i] + nums[j] == target:
                    return [i, j]
        return []

哈希表求解:

class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:#定义了一个名为Solution的类,其中包含一个名为twoSum的方法。这个方法接受类实例作为第一个参数(self),一个整数列表nums作为第二个参数,一个整数target作为第三个参数,并且该方法将返回一个整数类型的列表。
        hashtable = dict()#在方法内部,创建了一个空的字典hashtable,用于存储遍历过的数字及其下标。
        for i, num in enumerate(nums): #使用enumerate函数遍历输入的整数列表nums。在循环中,首先判断target与当前数字的差值是否在hashtable中,如果在,则返回对应的下标组成的列表。如果不在hashtable中,则将当前数字及其下标存入hashtable中。
            if target - num in hashtable:
                return [hashtable[target - num], i]
            hashtable[nums[i]] = i
        return [] #如果整个循环结束后仍未找到符合条件的数对,则返回一个空列表。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/123822.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python进行数据可视化,探索和发现数据中的模式和趋势。

文章目录 前言第一步:导入必要的库第二步:加载数据第三步:创建基本图表第四步:添加更多细节第五步:使用Seaborn库创建更复杂的图表关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Pyth…

2023年度API安全状况详解

随着云计算和移动应用的快速发展,API(应用程序接口)已成为不可或缺的技术组成部分。然而,API的广泛使用也带来了安全风险。本文将探讨2023年的API安全状况,并介绍了一些应对这些安全挑战的最佳实践。 引言 随着全球互联…

【Leetcode】【每日一题】【简单】2609. 最长平衡子字符串

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/find-the-longest-balanced-subs…

在linux安装单机版hadoop-3.3.6

一、下载hadoop https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/core/hadoop-3.3.6/ 二、配置环境变量 1、配置java环境变量 2、配置hadoop环境变量 export HADOOP_HOME/usr/local/bigdata/hadoop-3.3.6 export HBASE_HOME/usr/local/bigdata/hbase-2.5.6 export JA…

C# 继承,抽象,接口,泛型约束,扩展方法

文章目录 前言模拟需求场景模拟重复性高的需求初始类结构继承优化抽象类 需求1:打印CreateTime方法1:使用重载方法2:基类函数方法3:泛型约束方法3.1:普通泛型方法方法3.2:高级泛型约束,扩展方法…

阿里云双11大促,WoSign SSL国密RSA双证书首购4折优惠

阿里云2023双11“金秋云创季”活动盛大开启!2023年11月01日至11月31日,阿里云平台WoSign SSL证书“国密/RSA 双证书解决方案”首购4折优惠!惊喜折扣、限时福利,机会不容错过! 作为阿里云一年一度最盛大的优惠促销活动&…

RAID卡管理工具使用

RAID 基本概念 由于现代数据中心业务量的与日俱增,单台服务器上需要运行的数据也日益增多。当 单个物理磁盘在容量和安全性上不足以支持系统业务时,就需要将多个磁盘以某种特 定方式组合起来,对外作为一个可见的磁盘来使用,才可…

计算机毕业设计 基于Web的视频及游戏管理平台的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

oracle数据导出exp导入imp

Oracle的exp/imp命令用于实现对数据库的导出/导入操作; exp命令用于把数据从远程数据库服务器导出至本地,生成dmp文件; imp命令用于把本地的数据库dmp文件从本地导入到远程的Oracle数据库。 一、获取帮助信息 exp/imp helpy 二、数据导出 1…

3d max软件中的缓存垃圾该如何清理?

使用3d max建模到渲染操作,来回对效果图调整的次数过多时,就会出现一下看不到的垃圾缓存,影响保存的速度,影响效率! 对于这类的3d垃圾清理的有什么高效方法呢? 3dmax垃圾清理的常规操作如下: 1、…

AD9371 官方例程 NO-OS 主函数 headless 梳理(二)

AD9371 系列快速入口 AD9371ZCU102 移植到 ZCU106 : AD9371 官方例程构建及单音信号收发 ad9371_tx_jesd -->util_ad9371_xcvr接口映射: AD9371 官方例程之 tx_jesd 与 xcvr接口映射 AD9371 官方例程 时钟间的关系与生成 : AD9371 官方…

windows11使用docker部署安装minio

时间 2023-11-08 windows11使用docker部署安装minio 目录 1.docker 下载镜像2.docker安装镜像3.访问控制台4.安装问题解决5.使用教程 1.docker 下载镜像 调整镜像源到国内,否则会很慢 docker pull minio/minio2.docker安装镜像 设置用户名和密码时需要注意&…

开源:特殊的垄断

免责声明:本博客旨在分享我对开源策略的理解和体会,不代表任何组织或机构的立场或观点,也不构成任何商业或投资的建议或担保。本博客的内容可能存在错误或遗漏,也可能随着时间的推移而变得过时或不适用。请在使用或依赖本博客的内…

MySQL的表格去重,史上最简便的算法,一看就会

首先,表格my_tab02存在很多重复的数据: #表格的去重 方法一: 详细内容传送门:表格的去重 -- 思路: -- 1.先创建一张临时表 my_tmp,该表的结构和my_tab02一样 -- 2.把my_tmp的记录通过distinct关键字 处理后 把记录复…

基于单片机GP2D12测距-proteus仿真-源程序

基于51单片机红外测距-proteus仿真-源程序 一、系统方案 本设计采用51单片机作为主控器,液晶1602显示,GP2D12采集距离值,按键设置报警阀值,测量值超过阀值,蜂鸣器报警。 二、硬件设计 原理图如下: 三、单…

flutter笔记:骨架化加载器

flutter笔记 骨架化加载器 - 文章信息 - Author: Jack Lee (jcLee95) Visit me at: https://jclee95.blog.csdn.netEmail: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263/article/details/134224135 【介绍】:本文介…

21 移动网络的前世今生

1、移动网络的发展历程 发展过程就是:2G,3G,4G,5G的过程,用2G看txt,用3G看jpg,用4G看avi。 2、2G网络 手机本来是用来打电话的,不是用来上网的,所以原来在2G时代,上网使用的不是IP网络&#…

「Verilog学习笔记」多功能数据处理器

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网 分析 注意题目要求输入信号为有符号数,另外输出信号可能是输入信号的和,所以需要拓展一位,防止溢出。 timescale 1ns/1ns module data_…

【C语言】数据结构——无头单链表实例探究

💗个人主页💗 ⭐个人专栏——数据结构学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 导读:1. 单链表1.1 什么是单链表1.2 优缺点 2. 实现单链表基本功能2.1 定义结构体2.2 单链表打印2.3 销毁单链…