掘金团队号上线,助你 Offer 临门! 点击 查看详情 (opens new window)
# 前言
第一次参加掘金打卡活动,别的不说 主要是奔着奖励来的。4.12开始为了达到14题小目标 冲冲冲!!!这是第14题。
# 题目描述
题目描述我用截图leetcode的为主,所以题目如下图
# 思路分析
我看了一下题目感觉更像是找规律(不知道是不是错觉),我先穷举,发现2-2,3-3,4-5,5-8
2、3、5、8...
不得了 这不是传说中的斐波那数列 (opens new window)嘛
然后就按这个写一下,结果真的通过了,
思考:为什么是斐波那数列呢,思考一下就知道,比如要满足每次+1、+2 那么最后一步(n)肯定是1或者2,那不正是n-1阶楼梯(所需要的步数)走一步爬完和n-2阶楼梯(所需要的步数)走两步爬完,所以fn(n-2)+fn(n-1)满足斐波那数列的定义了。
# AC 代码
/**
* @param {number} n
* @return {number}
*/
var climbStairs = function(n) {
let fb = (n)=>{
let num1 = 1;
let num2 = 1;
let sum = num2;
for(let i=1;i<n;i++){
sum = num1+num2
num1 = num2
num2 = sum
}
return sum
}
return fb(n)
};
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 总结
坚持就是胜利。第14题算法完成,坚持就是胜利!!!
到此14题刷题系列小目标完成,那这就是结束了嘛 不!这只是开始 我之后也会保持每天刷题的习惯,去学习算法 现在连个入门级都不是 也买了算法基础课 打算系统的学习一遍基础课 然后继续刷题 不然对算法很多概念是不清楚的
我想花钱买课 是比较有动力学习的一件事 毕竟花钱了
坚持就是胜利!!!
↓↓↓
↑↑↑
这里可以点!这里可以点!这里可以点!