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

leetCode求两数之和(第一题)

一、题目描述

给定一个整数数组 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]

三、代码展示

for(let i=0;i<nums.length;i++){
    for(let j=i+1;j<nums.length;j++){
        if(nums[i]+nums[j]==target){
            // let a=nums[i]+nums[j]
            return [i,j];        
        }
    }
  }

思路分析:

拿到数组中的每个元素,使用两次for循环,将数组进行遍历,拿到元素
判断数组元素相加之和是否等于target值
如果等于那么就将两个元素的下标进行输出

代码解释:

  • 首先使用for循环,定义一个为i的下标,将数组元素进行第一次遍历,拿到数组当中的每个元素。
  • 第二,再次使用for循环将数组进行遍历,定义一个下标为j,注意此时需要让j等于i+1,因为数组元素不需要和自身相加,所以需要做加一运算,i是从下标为0开始(可以拿到第一个元素),j是从下标为1开始(拿到第二个元素),那么这时候就可以让第一个元素与第二个元素进行相加,使用数组名称[下标]就可以得到对应的元素。
  • 第三这时候就可以使用if语句进行判断,看两个元素相加之和是否等于target值,如果是那么就将两个元素下标进行输出。

四、结果

注意此时使用两个for循环输出的方式,时间复杂度会很高是O(n^2)。
在这里插入图片描述

相关文章:

  • Qt6.8.2中JavaScript调用WebAssembly的js文件<1>
  • linux-Openmanus本地部署-AI-Agent初探
  • 【农业大数据处理与应用】实验二 随机森林算法与LSTM循环神经网络
  • Linux文件系统管理
  • Spark;scp命令,rsync命令,ssh命令
  • 技术解析与实战指南:MySQL性能优化与高效数据库迁移工具推荐
  • 深度剖析《数理化学习》期刊:数理化教育领域的学术明珠
  • JAVA使用jar包外前端
  • 统一 Elastic 向量数据库与 LLM 功能,实现智能查询
  • 文档在线协同工具ONLYOFFICE教程:如何使用宏对 PDF 表单中的特定字段执行计算
  • 设计模式之美
  • LeetCode-移动零
  • 如何配置Socks5代理
  • 56.HarmonyOS NEXT 登录模块开发教程(十):总结与展望
  • 游戏引擎学习第156天
  • [leetcode] 面试经典 150 题——篇1:数组/字符串
  • 【redis】redis的单线程模型为什么效率高?
  • 为什么使用 XML Schema?
  • Linux websocket服务器、配网方法、QT客户端程序
  • deepseek+kimi做ppt教程记录
  • 郑州网站建设国奥大厦/网络营销模式案例
  • 网站建设 网站制作/seo交流群
  • 排名好的徐州网站建设/新闻软文发布平台
  • it培训机构学费/seo方案书案例
  • 做公司网站怎么做/百度问答首页
  • 承德北京网站建设/新品牌推广方案