php中青蛙跳台阶的问题解决方法


Posted in PHP onOctober 14, 2018

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

思路:

1.找规律 f(1)=1 f(2)=2 f(3)=3 f(4)=5 f(n)=f(n-1)+f(n-2)这是一个斐波那契数列

2.因为调到第n个台阶时,倒数第一个台阶可以一步跳过来,倒数第二个台阶也可以一步就跳过来

非递归版本:

JumpFloor(target)

  if target==1 || target==2 return target

  jumpSum=0

  jump1=1

  jump2=2

  for i=3;i<target;i++

    jumpSum=jump1+jump2

    jump1=jump2

    jump2=jumpSum

  return jumpSum
function jumpFloor($number)

{

    if($number==1 || $number==2){

        return $number;

    }  

    $jumpSum=0;

    $jump1=1;

    $jump2=2;

    for($i=3;$i<=$number;$i++){

        $jumpSum=$jump1+$jump2;

        $jump1=$jump2;

        $jump2=$jumpSum;

    }  

    return $jumpSum;

}

$res=jumpFloor(10);

var_dump($res);

以上代码实例大家可以在本地测试下,感谢大家对三水点靠木的支持。

PHP 相关文章推荐
php设计模式 State (状态模式)
Jun 26 PHP
PHP中的错误处理、异常处理机制分析
May 07 PHP
基于Zend的Captcha机制的应用
May 02 PHP
深入理解require与require_once与include以及include_once的区别
Jun 05 PHP
解析php中heredoc的使用方法
Jun 17 PHP
PHP 反射(Reflection)使用实例
May 12 PHP
常用的php图片处理类(水印、等比缩放、固定高宽)分享
Jun 19 PHP
PHP文件上传之多文件上传的实现思路
Jan 27 PHP
详解PHP的抽象类和抽象方法以及接口总结
Mar 15 PHP
php和nginx交互实例讲解
Sep 24 PHP
PHP实现通过二维数组键值获取一维键名操作示例
Oct 11 PHP
laravel 解决crontab不执行的问题
Oct 22 PHP
PHP通过文件路径获取文件名的实例代码
Oct 14 #PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
Oct 14 #PHP
php实现数组中出现次数超过一半的数字的统计方法
Oct 14 #PHP
php5.5使用PHPMailer-5.2发送邮件的完整步骤
Oct 14 #PHP
PHP中常见的密码处理方式和建议总结
Oct 14 #PHP
PHP如何根据文件头检测文件类型实例代码
Oct 14 #PHP
PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案
Oct 14 #PHP
You might like
php下实现农历日历的代码
2007/03/07 PHP
利用php递归实现无限分类 格式化数组的详解
2013/06/08 PHP
PHP生成plist数据的方法
2015/06/16 PHP
WordPress开发中短代码的实现及相关函数使用技巧
2016/01/05 PHP
php session实现多级目录存放实现代码
2016/02/03 PHP
PHP扩展迁移为PHP7扩展兼容性问题记录
2016/02/15 PHP
php基于协程实现异步的方法分析
2019/07/17 PHP
Mootools 1.2教程 函数
2009/09/15 Javascript
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
2009/12/09 Javascript
jQuery 位置函数offset,innerWidth,innerHeight,outerWidth,outerHeight,scrollTop,scrollLeft
2010/03/23 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
jQuery插件之jQuery.Form.js用法实例分析(附demo示例源码)
2016/01/04 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
2016/12/02 Javascript
JS Input里添加小图标的两种方法
2017/11/11 Javascript
JavaScript反射与依赖注入实例详解
2018/05/29 Javascript
vue.js 添加 fastclick的支持方法
2018/08/28 Javascript
TypeScript开发Node.js程序的方法
2019/04/30 Javascript
Vue源码之关于vm.$delete()/Vue.use()内部原理详解
2019/05/01 Javascript
javaScript把其它类型转换为Number类型
2019/10/13 Javascript
解决vue props传Array/Object类型值,子组件报错的情况
2020/11/07 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
[01:07]DOTA2次级职业联赛 - Fpb战队宣传片
2014/12/01 DOTA
[39:18]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第二场 12.17
2020/12/19 DOTA
[01:03:41]DOTA2-DPC中国联赛 正赛 Dynasty vs XG BO3 第三场 2月2日
2021/03/11 DOTA
Python 字符串操作方法大全
2014/03/11 Python
使用Python中的greenlet包实现并发编程的入门教程
2015/04/16 Python
Python查找函数f(x)=0根的解决方法
2015/05/07 Python
编写自定义的Django模板加载器的简单示例
2015/07/21 Python
Python爬虫之pandas基本安装与使用方法示例
2018/08/08 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
2019/06/20 Python
使用PyInstaller将Pygame库编写的小游戏程序打包为exe文件及出现问题解决方法
2019/09/06 Python
用python进行视频剪辑
2020/11/02 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
澳大利亚免息网上购物:Shop Zero
2016/09/17 全球购物
成品库仓管员岗位职责
2014/04/06 职场文书
房产转让协议书(2014版)
2014/09/30 职场文书