【九月打卡】第一天 学习LeetCode的使用
第一模块:课程介绍
课程名称:JavaScript版数据结构与算法 轻松解决前端算法面试
课程章节:1-3 如何刷 LeetCode?
主讲老师:lewis
第二模块:课程内容
学习了如何使用LeetCode,知道了官网是:https://leetcode.cn/,学会进行题目的搜索,难度的搜索,状态的搜索,列表的搜索。以及对做题工具的使用
第三模块:课程收获
- 尝试使用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 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦