当前位置: 首页 > news >正文

力扣第一题

1. 两数之和
提示
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target  的那 两个 整数,并返回它们的数组下标。
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。
你可以按任意顺序返回答案。
示例 1:
输入:nums = [2,7,11,15], target = 9
输出:[0,1]
解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:
输入:nums = [3,2,4], target = 6
输出:[1,2]示例 3:输入:nums = [3,3], target = 6
输出:[0,1]

分析:

        这个问题是一个经典的算法问题,解决这个问题的一种有效方法是使用哈希表(在Python中是字典)来存储遍历数组时遇到的每个数字和它的索引。这样,对于数组中的每个元素,我们可以快速检查是否存在另一个元素,使得与当前元素的和等于目标值。

代码:

def sum(nums, target):hash_map = {}   # 创建一个字典来存储数字和它的索引for i, num in enumerate(nums):  # 遍历数组complement = target - num   # 计算所需要的另一个数if complement in hash_map:return [hash_map[complement], i]hash_map[num] = i   #否则,将当前数字和它的索引存入字典return []   # 如果没有找到答案,返回空列表# 示例
print(sum([2,7,11,15], 9))  # 输出: [0, 1]
print(sum([3,2,4], 6))      # 输出: [1, 2]
print(sum([3,3], 6))        # 输出: [0, 1]

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • c++入门基础篇(上)
  • Day65 代码随想录打卡|回溯算法篇---组合总和II
  • 53-3 内网代理5 - frp搭建二级代理
  • Pytest中的钩子函数
  • 初识c++(引用,inline,nullprt)
  • 基于MCU平台的HMI开发的性能优化与实战(下)
  • SpringBoot 实现视频分段播放(通过进度条来加载视频)
  • [面试爱问] https 的s是什么意思,有什么作用?
  • VUE之旅—day3
  • ExcelVBA运用Excel的【条件格式】(三)
  • 【文档智能】LACE:帮你自动生成文档布局的方法浅尝
  • c++初阶学习----入门(上)
  • Cesium版本升级webgl问题,glsl代码关键字修改
  • 通过高德地图 JS API实现单击鼠标进行标注
  • 基于 sftp 的 NAS (局域网文件存储服务器)
  • [译] 怎样写一个基础的编译器
  • CentOS6 编译安装 redis-3.2.3
  • Electron入门介绍
  • javascript数组去重/查找/插入/删除
  • js ES6 求数组的交集,并集,还有差集
  • JS 面试题总结
  • Netty源码解析1-Buffer
  • PHP 7 修改了什么呢 -- 2
  • python docx文档转html页面
  • Spark VS Hadoop:两大大数据分析系统深度解读
  • SQLServer之创建显式事务
  • vue.js框架原理浅析
  • Xmanager 远程桌面 CentOS 7
  • 记一次和乔布斯合作最难忘的经历
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 使用Tinker来调试Laravel应用程序的数据以及使用Tinker一些总结
  • 事件委托的小应用
  • 要让cordova项目适配iphoneX + ios11.4,总共要几步?三步
  • 原生js练习题---第五课
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • # 执行时间 统计mysql_一文说尽 MySQL 优化原理
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (1)Nginx简介和安装教程
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (三)docker:Dockerfile构建容器运行jar包
  • (十八)Flink CEP 详解
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (转)Unity3DUnity3D在android下调试
  • ***检测工具之RKHunter AIDE
  • .Net 6.0--通用帮助类--FileHelper
  • .Net Core 中间件验签
  • .NET Remoting学习笔记(三)信道
  • .net 怎么循环得到数组里的值_关于js数组
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • .net生成的类,跨工程调用显示注释