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

斐波那契数

斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:

F(0) = 0,F(1) = 1
F(n) = F(n - 1) + F(n - 2),其中 n > 1

给定 n ,请计算 F(n) 。

// 计算斐波那契数列的第n项
int fib(int n) {// 边界条件:当n为0或1时,直接返回n(斐波那契数列定义)if(n < 2)return n;// 初始化循环变量i,从2开始(因为n=0和n=1已直接处理)int i = 2;// 初始化前两项的值:// a表示第i-2项,初始为fib(0) = 0// b表示第i-1项,初始为fib(1) = 1int a = 0, b = 1;// 循环计算从第2项到第n项的斐波那契数// 循环条件:当i小于等于n时继续(i < n + 1等价于i <= n)while(i < n + 1) {// 计算当前项:第i项 = 第i-2项 + 第i-1项int c = a + b;// 更新前两项:a变为原来的第i-1项(为下一轮计算做准备)a = b;// 更新前两项:b变为当前计算出的第i项(为下一轮计算做准备)b = c;// 循环变量自增,确保能计算到第n项i++;}// 循环结束后,b中存储的就是第n项的斐波那契数return b;
}

http://www.dtcms.com/a/308369.html

相关文章:

  • AI学习笔记三十三:基于Opencv的单目标跟踪
  • OpenCSG月度更新2025.7
  • leecode18 四数之和
  • 个股期权合约期内遇到标的停牌,如何处置?
  • DoRA详解:从LoRA到权重分解的进化
  • Redis线程模型讨论
  • 修改VSCode远程SSH的PATH
  • JVM字节码文件结构剖析
  • JVM学习日记(十二)Day12
  • 解释 MySQL 中的 EXPLAIN 命令的作用和使用场景
  • 格雷希尔G25F系列电气端口快速封堵接头,解决电池包、电机控制器等壳体的气密性测试难题,提升效率与可靠性,助力新能源汽车生产。
  • ARM--中断
  • 三坐标测量仪攻克深孔检测!破解新能源汽车阀体阀孔测量难题
  • 雷霆战机游戏代码
  • ABS系统专用磁阻式汽车轮速传感器
  • 建设公司如何优化梳理部门职责,提高运作效率?
  • 中烟创新自研【烟草行政许可文书制作系统】纳入“北京市人工智能赋能行业发展典型案例集”
  • 电子电气架构 --- 车载48V系统
  • 如何导入json文件到数据库
  • 生信技能76 - 根据SNP列表提取SNP位点上下游的参考基因组fasta
  • RocksDB关键设计详解
  • MySQL 45讲 16-17
  • 【Linux网络编程】网络层协议 - IP
  • 大模型微调工具LLaMA-Factory的安装流程
  • Git Pull 时遇到 Apply 和 Abort 选项?详解它们的含义与应对策略
  • sqli-labs:Less-16关卡详细解析
  • 数字通信原理--数字通信仿真基础
  • 基于C++的protobuf协议使用(四)项目应用与总结
  • 学以致用——用Docker搭建ThinkPHP开发环境
  • freesurfer处理图谱和被试的脑模版对齐的操作