NOTE

跳台阶

使用斐波那契数列的迭代关系计算青蛙跳台阶的跳法数量。

Data Structures & Algorithms创建于 更新于 约 1 分钟读完historical

这是历史学习笔记,可能存在过时或不完整的理解。

1. 题目描述

一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。

2. 思路

  • 本质上就是斐波那契数列

3. 实现

// 本质上就是斐波那契数列
//时间复杂度:O(n)
//空间复杂度:O(1)
func JumpFloor(number int) int {
	if number <= 2 {
		return number
	}

	a := 1
	b := 2
	res := a + b
	for i := 3; i < number; i++ {
		a = b
		b = res
		res = a + b
	}

	return res
}

4. 参考

讨论

使用 GitHub 账号参与讨论,评论会保存在 GitHub Issues 中。在 GitHub 查看