当前位置: 首页 > news >正文

5、斐波那契数列、跳台阶

题目: 斐波那契数列

描述:
大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。
n<=39

<?phpfunction Fibonacci($n)
{if($n<=0){$f1 = 0;}else if($n==1||$n==2){$f1 = 1;}else{$f1 = 1; $f2 = 1;while ($n-- > 2) {$f1 += $f2;$f2 = $f1-$f2;}}return $f1;
}

题目: 跳台阶

描述:
一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法。

<?php
/*
解析:
在本体中只有两种跳法即,一阶或者两两阶
a.那么假定第一次跳的是一阶,那么剩下的是n-1个台阶,跳法是f(n-1);
b.假定第一次跳的是2阶,那么剩下的是n-2个台阶,跳法是f(n-2)
c.由a和b假设可以得出总跳法为: f(n) = f(n-1) + f(n-2) 
d.然后通过实际的情况可以得出:只有一阶的时候 f(1) = 1 ,只有两阶的时候可以有 f(2) = 2
e.可以发现最终得出的是一个斐波那契数列:| 1, (n=1)
f(n) =    | 2, (n=2)| f(n-1)+f(n-2) ,(n>2,n为整数)
采用迭代比递归效率高
*/
function jumpFloor($number)
{$value=0;if($number==1){$value = 1;}else if($number==2){$value = 2;}else{$f1 = 1; $f2 = 2;for($i=3;$i<=$number;$i++){$value = $f1+$f2;$f1 = $f2;$f2 = $value;}}return $value; 
}
http://www.lryc.cn/news/373664.html

相关文章:

  • WPS相同字体但是部分文字样式不一样解决办法
  • Scala运算符及流程控制
  • Github 2024-06-10开源项目周报 Top15
  • 9. 文本三剑客之awk
  • 在vscode中调试,命令行出现错误信息ModuleNotFoundError: No module named ‘imp‘
  • SAP实施方法论的变化
  • phpstudy的安装dvwa
  • 费曼的博士学位论文及下载
  • k8s学习--kubernetes服务自动伸缩之垂直伸缩(资源伸缩)VPA详细解释与安装
  • 【OS】相关知识点收集
  • 如何开发高效服务(C++ )
  • STM32实现多级菜单界面显示
  • Qt事件处理和传递流程
  • 基于STM32移植U8g2图形库——OLED显示(HAL库)
  • C语言概述与历史
  • 钉钉Stream模式推送程序环境部署
  • c# 二维图形绘制实践
  • Nvidia TensorRT系列01-TensorRT的功能1
  • Vatee万腾平台:创新科技,助力企业腾飞
  • 搭建k8s集群报错unknown command “\u00a0“ for “kubeadm init“
  • 【数据结构】三路快速排序
  • 中国菜刀,蚁剑,哥斯拉,冰蝎的流量特征区别
  • 华为OD刷题C卷 - 每日刷题32(执行任务赚积分,计算三叉搜索树的高度)
  • QT系列教程(11) TextEdit实现Qt 文本高亮
  • 蓝队-溯源技巧
  • 【5】JDK、JRE和JVM的区别与联系
  • 【DevOps】Logstash详解:高效日志管理与分析工具
  • Vue3 之 Pinia 核心概念(八)
  • 【办公类-04-03】华为助手导出照片视频分类(根据图片、视频的文件名日期分类导出)
  • TVBOX 最新版下载+视频源教程