跳台阶
来源:互联网 发布:奔驰检测软件 编辑:程序博客网 时间:2024/06/07 08:58
题目描述
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。
public class Solution { public int JumpFloor(int target) {//思路,因为一次只能跳一步或者2步,所以f(n) = f(n-1)+f(n-2),因为当你在n-1阶的时候,我们可以一步跳到n阶,有多少种跳到n-1,就有多少种方法从n-1一步跳到n阶级,n-2同理。 /*方法一:递归 运行时间600多ms if(target <= 0){ return 0; } if(target == 1){ return 1; } if(target == 2){ return 2; } return JumpFloor(target-1)+JumpFloor(target-2); */ //方法二:递归的时间比较长,我们用遍历,运行时间30ms,可以看出递归很耗时。 if(target <= 0){ return 0; } if(target == 1){ return 1; } if(target == 2){ return 2; } int one =1; int two =2; int result=0; for(int i=2;i<target;i++){ result = one + two;//前两层的跳法累加 one = two; two =result; } return result; }}
阅读全文
0 0
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- 跳台阶
- DOS命令窗口快速定位相应路径方法
- Struts2学习之helloworld
- 分批算法
- A Review on Deep Learning Techniques Applied to Semantic Segmentation(译)-(1)
- 【转】jQuery Validate验证框架详解
- 跳台阶
- Maven的settings.xml文件结构之proxies
- Hive数据仓库(11)之解析Json格式文件
- 【Linux】中的管道实现
- Java并发与多线程图文教程
- Java开发中文乱码的几种解决方法
- angular.element方法汇总
- (译)XposedHelpers
- Spring(3): Bean