概述
博客主页:????看看是李XX还是李歘歘 ????
????每天分享一些包括但不限于计算机基础、算法等相关的知识点????
????点关注不迷路,总有一些????知识点????是你想要的????
⛽️今天的内容是Leetcode 剑指 Offer 10- II. 青蛙跳台阶问题⛽️????????????
剑指 Offer 10- II. 青蛙跳台阶问题
一只青蛙一次可以跳上1级台阶,也可以跳上2级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。
答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。
示例 1:
输入:n = 2
输出:2
示例 2:
输入:n = 7
输出:21
示例 3:
输入:n = 0
输出:1
提示:
0 <= n <= 100
迭代:
func numWays(n int) int {
//迭代
if n<2 {
return 1
}
a,b:=1,2
for i:=3;i<=n;i++{
a,b=b,(a+b)%1000000007
}
return b
}
递归:会超时
func numWays(n int) int {
//递归
if n==0 {
return 1
}
if n<2 {
return n
}
return (numWays(n-1)+numWays(n-2))%1000000007
}
最后
以上就是专注发箍为你收集整理的剑指 Offer 10- II. 青蛙跳台阶问题、Leetcode的Go实现的全部内容,希望文章能够帮你解决剑指 Offer 10- II. 青蛙跳台阶问题、Leetcode的Go实现所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复