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

web前端网页设计总结seo兼职

web前端网页设计总结,seo兼职,淘宝做导航网站,vps做网站 推广10.1 斐波那契数列 题目链接 牛客网 题目描述 求斐波那契数列的第 n 项&#xff0c;n < 39。 解题思路 如果使用递归求解&#xff0c;会重复计算一些子问题。例如&#xff0c;计算 f(4) 需要计算 f(3) 和 f(2)&#xff0c;计算 f(3) 需要计算 f(2) 和 f(1)&#xff0c;…

10.1 斐波那契数列

题目链接

牛客网

题目描述

求斐波那契数列的第 n 项,n <= 39。


解题思路

如果使用递归求解,会重复计算一些子问题。例如,计算 f(4) 需要计算 f(3) 和 f(2),计算 f(3) 需要计算 f(2) 和 f(1),可以看到 f(2) 被重复计算了。


递归是将一个问题划分成多个子问题求解,动态规划也是如此,但是动态规划会把子问题的解缓存起来,从而避免重复求解子问题。

public int Fibonacci(int n) {if (n <= 1)return n;int[] fib = new int[n + 1];fib[1] = 1;for (int i = 2; i <= n; i++)fib[i] = fib[i - 1] + fib[i - 2];return fib[n];
}

考虑到第 i 项只与第 i-1 和第 i-2 项有关,因此只需要存储前两项的值就能求解第 i 项,从而将空间复杂度由 O(N) 降低为 O(1)。

public int Fibonacci(int n) {if (n <= 1)return n;int pre2 = 0, pre1 = 1;int fib = 0;for (int i = 2; i <= n; i++) {fib = pre2 + pre1;pre2 = pre1;pre1 = fib;}return fib;
}

由于待求解的 n 小于 40,因此可以将前 40 项的结果先进行计算,之后就能以 O(1) 时间复杂度得到第 n 项的值。

public class Solution {private int[] fib = new int[40];public Solution() {fib[1] = 1;for (int i = 2; i < fib.length; i++)fib[i] = fib[i - 1] + fib[i - 2];}public int Fibonacci(int n) {return fib[n];}
}

结尾

原文链接

http://www.ds6.com.cn/news/5745.html

相关文章:

  • 建设银行网站打不开别的网站可以吗中国今天最新军事新闻
  • 昆明做个人网站seo搜索引擎优化期末考试
  • 免费行情软件下载海外网站推广优化专员
  • 苏州发布最新疫情防控通告知名的搜索引擎优化
  • wordpress建站视频广州seo优化电话
  • 展示型网站一样做seo优化淘宝代运营公司
  • 精神文明建设网站模板cba目前排行
  • 怎么做网站demoseo优化包括
  • 数据库查询网站建设郑州抖音推广
  • 工商银行门户网站是什么意思大地seo
  • 镇江做网站的今日最近的新闻大事10条
  • 网站建站建设哪家好免费有效的推广网站
  • 有什么做h5的网站网站页面禁止访问
  • 上海市安全生产建设协会网站采集站seo课程
  • 怎么做万网网站爱站seo工具包官网
  • 公司网站域名是什么百度关键词购买
  • wordpress 模拟word百度seo排名点击
  • wordpress存档国内seo工具
  • 做网站网课今天最新消息
  • 哈尔滨专业网站制作设计手机网站关键词快速排名
  • 网站的权重是什么意思qq营销
  • 做网站是不是要域名费新浪微指数
  • 小说网站做编辑子域名大全查询
  • 小程序快速建站10种营销方法
  • 狼友我们只做精品网站小程序开发平台
  • 整形美容医院手机网站wap模板推广普通话手抄报简单又好看
  • 建一个自己的网站有什么用环球资源网站网址
  • 儿童个人网站源码高平网站优化公司
  • 武汉做网站的知名公司seo网络推广师招聘
  • 兰州做网站开发抖音seo优化