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

news2024/12/23 14:58:03

题目:

给定一个整数数组 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 [] #如果整个循环结束后仍未找到符合条件的数对,则返回一个空列表。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TCP/IP的基础知识

文章目录 TCP/IP的基础知识硬件(物理层)网络接口层(数据链路层)互联网层(网络层)TCP/IP的具体含义传输层应用层(会话层以上的分层)TCP/IP分层模型与通信示例发送数据包的一个例子接收…

Notepad++中删除连续的任意n行

使用Notepad里的行标记功能,可以删除指定的任意n行。 案例1,删除sample2.dat里的第201行到第10000行。方法如下: (1) 用户NotePad打开sample2.dat,右击201行 —》“开始/结束”/开始 图(1) 选择行的起点:201 (2) 接…

计算机网络第4章-通用转发和SDN

引子: 在前面,我们将基于目的地转发的特征总结为两个步骤: 查找目的IP地址(匹配),然后将分组发送到有特定输出端口的交换结构(“动作”)。 但是这种转发特征会带来许多问题&#…

Codeforces Round 907 (Div. 2——ABC)

A.Sorting with Twos 题目 给定一个数组a,可执行操作如下: 1、选择一个非负整数m,要求 2、将数组中元素从1到m减去1 问,是否可以通过以上操作得到一个单调不增的数组序列。 输入 首行样例个数t, 每个样例首行数…

MySQL第七讲·怎么利用聚合函数实现高效地分组统计?

你好,我是安然无虞。 文章目录 聚合函数:怎么高效地进行分组统计?sum( )avg( ) & max( ) & min( )count( ) 聚合函数:怎么高效地进行分组统计? MySQL中有5种聚合函数较为常用,分别是求和函数sum(…

面试官:说说Redis的SDS底层实现原理

文章目录 前言面试开始1、说说Redis基本类型有哪些2、String类型常用于什么场景3、String类型采用什么数据结构4、继续深入讲讲SDS实现细节5、你说说SDS和C语言字符串的区别5.1、SDS获取长度时间复杂度更低5.2、SDS杜绝缓冲区溢出5.3、SDS减少字符串内存重分配次数5.4、SDS二进…

pytest全局变量的使用

这里重新阐述下PageObject设计模式: PageObject设计模式是selenium自动化最成熟,最受欢迎的一种模式,这里用pytest同样适用 这里直接提供代码: 全局变量 conftest.py """ conftest.py 全局变量,主要实…

基于Java+SpringBoot+LayUI仓库管理系统

一.项目介绍 本项目是使用JavaSpringBoot开发,可以实现仓库的注册、登录,登录后可进入系统,进行客户管理、供应商管理、商品管理、商品退货查询管理、登录日志及退出等几大模块。系统界面采用传统的后台管理界面,界面简单、直观。…

2023年“走红军走过的路”徒步穿越系列活动(大通湖站)盛大开赛!

“蟹”逅红色大通湖 徒步秋色水波中 ——“中国体育彩票” 2023年“走红军走过的路”徒步穿越系列活动(大通湖站)暨大通湖半程马拉松盛大开赛! 11月5日上午8:30,2023年“走红军走过的路”徒步穿越系列活动(大通湖站&…

数据结构-Prim算法构造无向图的最小生成树

引子: 无向图如果是一个网,那么它的所有的生成树中必有一颗生成树的边的权值之和是最小的,我们称 这颗权值和最小的树为:“最小生成树”(MST)。 其中,一棵树的代价就是树中所有权值之和。 而…

幂等最佳实践

1、什么是幂等? 根据百度百科解释: “幂等(idempotent、idempotence)是一个数学与计算机学概念,常见于抽象代数中。 在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数&…

删除word最后一页之后的空白页

最近编辑word比较多,有时最后一页(最后一页内容还有可能是表格)之后,还有一页空白页,单独按下backspace、del都删不掉,很让人着急。 经过查询有几种方法: (1)点击选中空…

kubernetes(5) 续4

目录 volumes emptyDir卷 hostpath卷 nfs卷 持久卷 storageclass statefulset控制器 mysql主从部署 volumes emptyDir卷 [rootk8s2 volumes]# vim emptydir.yaml apiVersion: v1 kind: Pod metadata:name: vol1 spec:containers:- image: busyboxplusname: vm1command: ["…

pyqt5的组合式部件制作(一)

以多选一的选择器为例,来实践一下工程实用级别的组合式部件设计。自己之前做的自定义的组合式部件,结构不够简单优化,在实际的工程里面,使用部件的过程比较繁琐。所以,这里来做一个优化的实验。 之所以做这个组合部件&…

DevChat:开源AI编程助手的全面解析

🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…

【场景方案】前端如何结合GPT提升我们的开发效率,个人经验总结,不定期更新~

文章目录 AI模型的选择提问的方式很重要心里建设提问方法论设立角色从总体到局部步骤拆分,循序渐进举例子说明主动让他联系上文不要太纠结提问的方式 网址推荐尾巴 不说废话,没有铺垫,直接开始讲重点 AI模型的选择 首先咱们要选择一个适合的…

3-知识补充-HTTP协议

3-知识补充-HTTP协议 文章目录 3-知识补充-HTTP协议HTTP协议基础什么是HTTP?HTTP协议的会话方式HTTP1.0和HTTP1.1的区别 请求和响应报文报文的格式报文解析实例-请求百度官网请求报文-GET请求请求报文-POST请求-学习用-非请求百度官网响应报文 响应状态码有代表性的…

第八章认识Express框架

目录 Express模块化路由 基本概述 基本使用 基本构建 案例项目 Express接收请求参数 基本概述 基本类别 Express接收GET请求参数 Express接收POST请求参数 Express接收路由参数 Express模块化路由 基本概述 在Express中,路由是指确定应用程序如何响应对…

功率放大器的工作原理及选购技巧

功率放大器是电子设备中非常重要的组成部分之一,它的主要功能是将输入信号的功率进行放大,以驱动高功率负载。在各种应用领域中,如音频放大器、无线电频率放大器、射频功率放大器等,功率放大器都发挥着非常重要的作用。下面将介绍…

Kubernetes二进制搭建

目录 一、K8S的架构 二、K8S创建Pod资源的工作流程 三、K8S资源对象和资源配置信息 K8S资源对象 K8S资源配置信息 四、K8S的的三种网络和三种接口 三种网络: 三种节点: 五、etcd 集群 etcd 的特点: 六、flannel flannel方案 K8S …