package code;
//题目描述:变态跳台阶
//一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。
//求该青蛙跳上一个n级的台阶总共有多少种跳法。
//因为n级台阶,第一步有n种跳法:跳1级、跳2级、到跳n级
//跳1级,剩下n-1级,则剩下跳法是f(n-1)
//跳2级,剩下n-2级,则剩下跳法是f(n-2)
//所以f(n)=f(n-1)+f(n-2)+...+f(1)
//因为f(n-1)=f(n-2)+f(n-3)+...+f(1)
//所以f(n)=2*f(n-1)
public class Offer09
{
public static void main(String[] args)
{
Offer09 offer = new Offer09();
for(int i = 0; i < 10; i++)
{
System.out.println(offer.JumpFloorII(i));
}
}
public int JumpFloorII(int target)
{
if(target == 0)
return 0;
else if(target == 1)
return 1;
else if(target == 2)
return 2;
else
return (2*JumpFloorII(target-1));
}
}
相关推荐
深入解析DDR5 SDRAM中的CA训练模式(CATM):原理与实现
本文深入解析DDR5 SDRAM中的CA训练模式(CATM),详细探讨其工作原理与实现方法。通过分析JESD79-5标准,揭示CATM在时序校准、信号质量优化和系统稳定性方面的核心价值,并提供硬件设计考量和系统级调试技巧,帮助工程师解决高速内存系统中的信号完整性问题。
09 图解剑指Offer 变态跳台阶 Java题解
08 图解剑指Offer 青蛙跳台阶 Java题解09 图解剑指Offer 变态跳台阶 Java题解题目链接题目描述题解:图解:代码:复杂度 09 图解剑指Offer 变态跳台阶 Java题解 题目链接 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 题解: 可以想像青蛙还有最后一步就跳到n阶,由于青蛙可以最多跳n阶,所以青蛙跳上n阶台阶的方法等于之前所有阶跳台阶跳法的总和。由此可推导如下公式: f(n) = f(n - 1) +f(
react +ant desiagn pro实现按钮操作权限控制
在ant desiagn pro中提供了一个access用于对权限进行控制,需引入useAccess和Access
剑指Offer #09 变态跳台阶(数列推导)
剑指Offer面试题,本题解包含有规律的详细推导,相信可以给你带来收获。
038、OIS 光学防抖原理与调试:陀螺仪数据融合、Lens Shift OIS 的闭环控制
本文分享了OIS光学防抖系统的调试经验和关键技术要点。作者通过一个"呼吸感"Bug案例,揭示了陀螺仪数据融合和闭环控制的重要性。系统介绍了OIS的三个关键层次:传感器层(陀螺仪特性)、控制层(复合算法)和执行层(闭环控制)。重点讲解了陀螺仪数据融合的互补滤波实现、Lens Shift闭环控制的PID优化策略(包括积分抗饱和和微分滤波),以及前馈补偿的应用。最后总结了调试中的关键问题:数据同步、霍尔校准、温度补偿和性能评估方法,并给出实用建议:平衡算法复杂度与性能、预留带宽余量、重视产线校准等。文章强调OIS
2026年03月CCF-GESP编程能力等级认证Scratch图形化编程一级真题解析
本文收录于《,订阅后可阅读专栏内所有文章。
剑指Offer JZ09 变态跳台阶(数列推导)
题目来源:牛客网-剑指Offer专题题目地址:变态跳台阶 题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 题目解析一:直接推导 本质上是斐波那契数列的变种,普通跳台阶是一步与两步,问题规模缩小到分成最后要跳到第 n 阶可以跳两次或者一次去求解,所以,在普通跳台阶,设置两个临时变量存下跳一次或者两次时,前面会有多少种可能的结果 dp 就是可以由什么状态推导出最后的状态,斐波那契数列是由前两种状态,而这里就是由前 n - 1 种状态推导出
2026年海能达嵌入式岗位面试题集(含参考答案)
本文总结了嵌入式系统开发中的常见面试题,涵盖项目经验、外设接口、存储系统、编程基础、操作系统等核心模块。主要内容包括:1)项目核心经历的硬件/软件架构及问题解决思路;2)SPI、I2C等接口协议的时序特点与应用要点;3)NAND Flash存储管理中的ECC校验原理和文件系统对接方案;4)USB设备枚举流程等关键知识点。这些题目针对嵌入式岗位的技术考察重点,既包含底层硬件接口细节,也涉及系统级设计与优化策略,全面考察开发者的嵌入式系统能力。
变态跳台阶(剑指offer09)
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路: 1阶台阶 1种可能,2阶台阶 两种可能f(1)=1,f(2)=2 ; 3阶台阶f(3)=f(2)+f(1)+1//可以在1阶起跳,也可以在2阶起跳,也可以直接跳 f(n)=f(n-1)+f(n-2)+f(n-3)...+f(n-n)=f(0)+f(1)+f(2...
OData Request:Create Entity 在 ABAP OData Client Proxy 中的工程化实践
文章摘要 本文针对具备 SAP Gateway 与 ABAP 开发经验的读者,详细讲解如何通过 ABAP OData Client Proxy 实现 OData 服务的 Create 操作。首先对比了 OData V2 与 V4 的 Create 规范差异,强调键、集合 URL 和请求体的标准化要求。随后介绍了 ABAP Client Proxy 的编程模型,包括 Client Proxy、Entity List Resource 和 Create Request/Response 三个核心对象,并提供了完
37、半导体硅材料中的缺陷与吸杂技术解析
本文系统解析了半导体硅材料中的缺陷形成机制及其对电子器件性能的影响,重点探讨了生长和工艺诱导缺陷、表面与内部微缺陷的起源与特征。文章详细阐述了吸杂技术的原理、过程及在集成电路和太阳能电池制造中的应用,强调通过氧行为调控和热处理优化实现缺陷控制。同时介绍了吸杂效果的评估方法,并展望了未来新型吸杂技术的发展趋势,为提升半导体器件性能和制造良率提供理论支持和技术路径。
【剑指offer】-变态跳台阶-09/67
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 题目分析 在上一个问题上又加深的一道题目:跳台阶 分析: 当台阶为1时,跳:1,跳法:1 当台阶为2时,跳:2 || 1 1,跳法:2 当台阶为3时,跳:1 2 || 1 1 1 || 2 1 || 3,跳法:4 当台阶为4时,跳:2 2 || 1 1 1 1 || 1 2...
曲线最小二乘拟合基础
介绍曲线拟合的最小二乘原理,介绍了常规最小二乘和正交最小二乘算法,最后介绍了MathNet矩阵运算库的基本操作。
剑指Offer-09.变态跳台阶(Java)
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 解题思路 f(1) = 1 f(2) = 2= f(1) + 1 f(3) = f(2)+f(1) +1 推出 f(n) = f(n-1)+ f(n-2)+…+ f(1)+1 f(n) = 2f(n-1) 因此 序号 方法 1 递归方法 2 非递归 3...
迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)
迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)
SIMATIC S7-1200, S7-1500 PID 控制[手册]
SIMATIC S7-1200, S7-1500 PID 控制[手册]
剑指offer—09变态跳台阶(Java)
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 public class Solution { public int JumpFloorII(int target) { if(target == 0){ //没有台阶 return 0; } if(target == 1){ //一个台阶 return 1; } if(tar...
数学建模模型总结
这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!
剑指offer—09变态跳台阶(Python)
【题目】一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 【思路】此题思路与08类似,假设青蛙从后往前跳,他可能的落点是n-1,n-2,…,1,所以他的跳法是f(n)=f(n-1)+f(n-2)+…+f(1),而青蛙跳n-1级台阶的跳法是f(n-1) = f(n-2)+f(n-3)+…+f(1),合并得:f(n) = 2f(n-1)。 ...
怀旧版电脑GBC模拟器
再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。
剑指offer-09(变态跳台阶)
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 代码 /* 一个台阶 一种 两个台阶 两种 三个台阶 四种 四个台阶 八种 */ public class Solution { public int JumpFloorII(int target) { if (target<=2) return target; return JumpFloorII(target-1)*2; } }
剑指offer09——变态跳台阶(DP)
1. 思路 1.1 暴力 1.2 找出规律 2. 代码 2.1 暴力 int jumpFloorII(int n) { if (n==0 || n==1) return 1; vector f(n+1, 0); f[0] = f[1] = 1; for (int i=2; i<=n; ++i) { for (int j=0; j<i; ++j) { f[i] += f[j]; } } r.
变态跳台阶--剑指offer09(java实现)
题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 解题思路 递归实现 源码 public class Solution { public int JumpFloorII(int target) { int res = a(target); return res; } pu...
09(2) 变态跳台阶 --《剑指Offer》(Java版)
github地址 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 这道题的简化版本就是斐波那契数列. 一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。 通过简单的找规律就可以发现,第n层的可能性是前n-1层的可能性之和+1. 所以公式:f(n)...
剑指offer(07-09)题解
剑指offer07-09题解07题解08题解09题解 07题解 题目描述 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。 n<=39 思路解析 其实今天解析的三道题目刚好都属于算法题目里的同一分支,就是递归,也可以说是动态规划,就是要找出状态转换方程,这样我们才能进行解答。斐波那契数列属于最简单的动态规划,条件基本就已经给出来了就是,后一项是前两项的和,所以状态转换方程也就出来了dp[i]=dp[i-1]+dp[i-2] (i&
剑指offer(1-10题)详解
文章目录01二维数组的查找02替换空格03从尾到头打印链表04重建二叉树★05 用两个栈实现队列06旋转数组的最小数字07 斐波那契数列08 跳台阶09 变态跳台阶10 矩阵覆盖 欢迎关注个人数据结构专栏哈 微信公众号:bigsai 01二维数组的查找 题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数...
剑指offer题型汇总及个人建议
目录考点分类难度分类全部题解链接建议感想 考点分类 我自己的理解,不喜勿喷。 链表: 二叉树: 排序: 搜索: 数学逻辑: 字符串: 数组: 难度分类 本身牛客网的难度等级我感觉其实不是很合理,有时候他标的难题反而简单,中等题反而会卡我好久,下面是我列出来的难度分类。不喜勿喷。 简单: 中等: 较难: 困难: 全部题解链接 剑指offer(01-03)题解 剑指offer(04-06)题解 剑指offer(07-09)题解 剑指offer(10-12)题解 剑指offer(13-15)题解 剑指offer(
剑指offer面试题09-2----跳台阶(二)
题目描述: 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 解题思路1: 青蛙跳n级台阶的跳法相当于青蛙跳青蛙跳n-1级台阶后再跳1级,或者青蛙跳n-2级台阶后再跳2级…或者青蛙跳2级后再跳n-2级,或者跳1级后再跳n-1级,或者直接跳n级。因此 f(x) = f(x-1) + f(x-2) + f(x-3) + ....
剑指offer——9、变态跳台阶(java)
题目 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 先自己算一下: n=1的时候,1种跳法。 n=2的时候,2种跳法。 n=3的时候,4种跳法。 n=4的时候,8种跳法。 n=5的时候,16种跳法。 是有规律的!!!于是: 代码(递归解法与普通解法) public class test09 { public static v...
面试题09_斐波那契数列及其变种详解——剑指offer系列
题目描述: 写一个函数,输入n,求斐波那契数列的第n项。 解题思路: 这个题目很经典,但是要写好分析好与其相关的题目也不容易。后面介绍两个变形题目。 思路1:递归 递归的优点就是易于理解,代码简单。 缺点就是,执行速度慢,有大量重复计算,容易造成栈溢出 思路2:迭代 迭代方方法是用空间换时间,速度比递归快。通常情况下代码要长一点。 思路3:公式法
384



被折叠的 条评论
为什么被折叠?



