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

做网站用谷歌关键词

做网站用,谷歌关键词,公司做营销网站,技术网站建设牛客网NC231954:斐波那契数列 (简单的数列问题) 题目描述 本题要求我们计算斐波那契数列的第n项,斐波那契数列定义如下: f(1) 1f(2) 1f(n) f(n-1) f(n-2),当n ≥ 3 给定整数n,求f(n)的值。 算法思路 斐波那契…

牛客网NC231954:斐波那契数列 (简单的数列问题)

题目描述

在这里插入图片描述

本题要求我们计算斐波那契数列的第n项,斐波那契数列定义如下:

  • f(1) = 1
  • f(2) = 1
  • f(n) = f(n-1) + f(n-2),当n ≥ 3

给定整数n,求f(n)的值。

算法思路

斐波那契数列是一个经典问题,有多种解法:

  1. 递归法(不推荐,时间复杂度高)
  2. 动态规划(使用数组存储所有值)
  3. 迭代法(只保存必要的变量)

本题采用了迭代法,只保存前两个数字状态,空间复杂度为O(1),时间复杂度为O(n)。

代码实现

#include<bits/stdc++.h>
using namespace std;
int main(){int n;cin>>n;int f1=1,f2=1,f3;if(n==1)f3=f1;if(n==2)f3=f2;else {for(int i=3;i<=n;i++){f3=f1+f2;f2=f1;f1=f3;}}cout<<f3<<endl;
}

代码详解

  1. 变量初始化

    • f1=1:表示f(1)的值
    • f2=1:表示f(2)的值
    • f3:用于存储计算结果
  2. 基础情况处理

    • 当n=1时,直接返回f1的值,即1
    • 当n=2时,直接返回f2的值,即1
  3. 迭代计算

    • 当n≥3时,进入循环计算
    • 每次迭代,f3 = f1 + f2计算当前值
    • 然后更新状态:f2 = f1f1 = f3
    • 这样f1始终保存最新计算出的值,f2保存前一个值
  4. 输出结果:最终f3存储了f(n)的值

复杂度分析

  • 时间复杂度:O(n),需要循环n-2次
  • 空间复杂度:O(1),只使用了常数级别的存储空间

总结

这段代码简洁高效地解决了斐波那契数列问题。采用迭代方法避免了递归带来的重复计算问题,优化了时间和空间复杂度。值得注意的是,当处理更大的n值时,需要考虑整数溢出问题,可能需要使用长整型或其他方法来处理。

http://www.dtcms.com/wzjs/62482.html

相关文章:

  • 虎门网站建设多少钱seo优化服务是什么
  • 微信商城在哪里进入宁波seo免费优化软件
  • 赣州章贡区景点网络优化的内容包括哪些
  • 制作企业网站用什么软件企业营销型网站
  • 网络运维的工作内容西安seo服务公司
  • 深圳 做网站营销型网站一般有哪些内容
  • 政府网站建设日程表怎么把广告发到各大平台
  • 公网动态ip如何做网站网站维护中是什么意思
  • 永远网站建设天津最新消息今天
  • 有哪些可以做1元夺宝的网站百度一下就知道了官网楯
  • 如何做 网站映射中国职业技能培训中心官网
  • 怎样让百度搜索到自己的网站想做电商怎么入手
  • 传媒公司做网站编辑 如何软文范文200字
  • 没备案的网站收录代运营是什么意思
  • 这个是以前我自己做的一个网站网站搭建
  • dw做的网站怎么发布到网上数据分析网页
  • wordpress如何搬家西安seo计费管理
  • 淘宝入驻网站建设网络推广可做哪些方面
  • 可不可以建网站做微商个人博客登录入口
  • 免费手机h5模板网站模板下载保定seo推广
  • 做网站 用 显示器百度做个人简介多少钱
  • 扬州网站开发公司seo外包公司
  • 物流企业的网站模板许昌seo推广
  • 我是做化工回收的做哪个网站比较好网络优化培训
  • 南京网站设计公司济南兴田德润简介图片网站设计需要什么
  • 机关网站建设前期准备工作南昌seo技术外包
  • 电梯配件做外贸在哪个网站seo关键词排名点击工具
  • asp网站开发环境河南网站建站推广
  • 洛阳网站建设优化白杨seo课程
  • wordpress 假用户插件网络网站推广优化