为了账号安全,请及时绑定邮箱和手机立即绑定

【九月打卡】第一天 学习LeetCode的使用

第一模块:课程介绍

课程名称:JavaScript版数据结构与算法 轻松解决前端算法面试
课程章节:1-3 如何刷 LeetCode?
主讲老师:lewis

第二模块:课程内容

第三模块:课程收获

  1. 尝试使用LeetCode的编码工具进行代码的书写。

选择题目:两数之和,作为我做的第一个题

题目大概:

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

就是说,找下这个数组里面,那两个数字加起来等于target。

这里使用TS作为我的语言
图片描述

我的感觉,就是对数组进行循环,一个一个加,这样感觉很呆,不过可以试一下。

先写一个循环

    for(let i = 0; i < nums.length; i++){

    }

第一个循环是要加的第一个数字,然后写第二个循环来获取另一个用来加的数据

    for(let i = 0; i < nums.length; i++){
        for(let j = i + 1; j < nums.length; j++){

        }
    }

注意,这里的j,必须得是前面那个数字的下一个,所以用的就是i + 1。因为在这个题目里面,如果一个数字和全部的数字都加过了,相当于它已经是个废弃的数字,所以第二次循环的话,就得从下一个数字开始。

完整代码

function twoSum(nums: number[], target: number): number[] {
    for(let i = 0; i < nums.length; i++){
        for(let j = i + 1; j < nums.length; j++){
            // 用当前的数据,和剩下的都加一遍
            const count = nums[i] + nums[j]
            if(count === target){
                return [i, j]
            }
        }
    }
};

点击下面的执行代码看看效果:
图片描述

然后可以点击提交按钮,来提交代码。

等待一会儿后,左侧就出现了结果。

图片描述

击败了22%的用户,看来还有优化空间。

还可以点击显示详情按钮,查看一些神奇的数据。
图片描述

完成了自己的第一个题目,感觉还是不错的,未来可期!。

第四模块:课程记录

图片描述

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消