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

做网站的公司简介济南百度seo

做网站的公司简介,济南百度seo,ui特效网站,商城网站做推广方案创作不易,感谢三连支持 ! 斐波那契数列用于一维探索的单峰函数之中,用于求解最优值的方法。其主要优势为,在第一次迭代的时候求解两个函数值,之后每次迭代只需求解一次 。 一、第N个泰波那契数 . - 力扣(…

                                                 创作不易,感谢三连支持 !

        斐波那契数列用于一维探索的单峰函数之中,用于求解最优值的方法。其主要优势为,在第一次迭代的时候求解两个函数值,之后每次迭代只需求解一次 。

一、第N个泰波那契数

. - 力扣(LeetCode)第N个泰波那契数

class Solution {
public:int tribonacci(int n) {//边界情况if(n==0||n==1) return n;if(n==2)  return 1;//建表vector<int> dp(n+1);dp[1]=dp[2]=1;//开始填表for(int i=3;i<=n;++i)  dp[i]=dp[i-1]+dp[i-2]+dp[i-3];return dp[n];}
};

时间复杂度O(N),空间复杂度为O(N)

是否还有可以优化的方法呢??那就是该题可以使用滚动数组! 

class Solution {
public:int tribonacci(int n) {//边界情况if(n==0||n==1) return n;if(n==2)  return 1;//滚动数组int a=0,b=1,c=1,d=0;//开始滚动for(int i=3;i<=n;++i)  {d=a+b+c;a=b;b=c;c=d;}return d;}
};

时间复杂度O(N),空间复杂度为O(1) 

二、三步问题

. - 力扣(LeetCode)三步问题

思路1:dp[i]表示从起点到达i位置一共有几种方法

class Solution {
public:int waysToStep(int n) {const int MOD=1e9+7;//边界情况if(n==1||n==2) return n;if(n==3) return 4;//建立dp表vector<int> dp(n+1);//初始化dp[1]=1,dp[2]=2,dp[3]=4;//填表for(int i=4;i<=n;++i)  dp[i]=((dp[i-1]+dp[i-2])%MOD+dp[i-3])%MOD;return dp[n];}
};

思路2:dp[i]表示从i位置到达终点一共有几种方法

class Solution {
public:int waysToStep(int n) {const int MOD=1e9+7;//边界情况if(n==1||n==2) return n;if(n==3) return 4;//建立dp表vector<int> dp(n);//初始化dp[n-1]=1,dp[n-2]=2,dp[n-3]=4;//填表for(int i=n-4;i>=0;--i)  dp[i]=((dp[i+1]+dp[i+2])%MOD+dp[i+3])%MOD;return dp[0];}
};

三、使用最小的花费爬楼梯

. - 力扣(LeetCode)使用最小的花费爬楼梯

方法1:dp[i]表示从起点到i台阶的最小花费

class Solution {
public:int minCostClimbingStairs(vector<int>& cost) {int n=cost.size();vector<int> dp(n+1);//开始填表for(int i=2;i<=n;++i) dp[i]=min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2]);return dp[n];}
};

思路2:我们也可以以i为起点,让dp[i]表示到楼顶的最小花费

class Solution {
public:int minCostClimbingStairs(vector<int>& cost) {int n=cost.size();//处理边界情况vector<int> dp(n);dp[n-1]=cost[n-1],dp[n-2]=cost[n-2];for(int i=n-3;i>=0;--i) dp[i]=cost[i]+min(dp[i+1],dp[i+2]);return min(dp[0],dp[1]);}
};

四、解码方法

. - 力扣(LeetCode)解码方法

class Solution {
public:int numDecodings(string s) {int n=s.size();vector<int> dp(n);if(s[0]!='0') ++dp[0];//处理边界情况if(n==1)  return dp[0];if(s[1]!='0'&&s[0]!='0') dp[1]++;int t=(s[0]-'0')*10+(s[1]-'0');if(10<=t&&t<=26) ++dp[1];//开始填表for(int i=2;i<n;++i) {if(s[i]!='0') dp[i]+=dp[i-1];int t=(s[i-1]-'0')*10+(s[i]-'0');if(10<=t&&t<=26) dp[i]+=dp[i-2];}return dp[n-1];}
};

       我们会发现dp[1]的初始化和填表里面的过程非常相似,所以我们可以用一个动态规划的小技巧——虚拟节点(专门用来处理边界问题)

class Solution {
public:int numDecodings(string s) {int n=s.size();vector<int> dp(n+1);dp[0]=1;if(s[0]!='0') ++dp[1];//开始填表for(int i=2;i<=n;++i) {if(s[i-1]!='0') dp[i]+=dp[i-1];int t=(s[i-2]-'0')*10+(s[i-1]-'0');if(10<=t&&t<=26) dp[i]+=dp[i-2];}return dp[n];}
};

 先暂时更新到这,后面有新的题目会持续更新


文章转载自:
http://flashhouse.c7623.cn
http://chiroptera.c7623.cn
http://mesosphere.c7623.cn
http://colugo.c7623.cn
http://boldface.c7623.cn
http://xanthomatosis.c7623.cn
http://hermetical.c7623.cn
http://housemother.c7623.cn
http://desideratum.c7623.cn
http://eudemonics.c7623.cn
http://scorebook.c7623.cn
http://goldie.c7623.cn
http://staggerbush.c7623.cn
http://middlebreaker.c7623.cn
http://untraversed.c7623.cn
http://sirgang.c7623.cn
http://rayonnant.c7623.cn
http://caliban.c7623.cn
http://planter.c7623.cn
http://barkeeper.c7623.cn
http://adiaphorist.c7623.cn
http://isodynamicline.c7623.cn
http://wayfarer.c7623.cn
http://unsure.c7623.cn
http://maulana.c7623.cn
http://segregator.c7623.cn
http://equiponderant.c7623.cn
http://villain.c7623.cn
http://myokymia.c7623.cn
http://somewhere.c7623.cn
http://manfully.c7623.cn
http://parlor.c7623.cn
http://coruscant.c7623.cn
http://deray.c7623.cn
http://masker.c7623.cn
http://enterprise.c7623.cn
http://leah.c7623.cn
http://amphotericin.c7623.cn
http://plotz.c7623.cn
http://participance.c7623.cn
http://peacebreaker.c7623.cn
http://brum.c7623.cn
http://perthite.c7623.cn
http://bunch.c7623.cn
http://sensitizer.c7623.cn
http://maiger.c7623.cn
http://pantshoes.c7623.cn
http://ssg.c7623.cn
http://geostrategic.c7623.cn
http://delinquent.c7623.cn
http://autointoxication.c7623.cn
http://choirboy.c7623.cn
http://ultimo.c7623.cn
http://unschooled.c7623.cn
http://onstage.c7623.cn
http://liger.c7623.cn
http://thoth.c7623.cn
http://exordial.c7623.cn
http://heraldry.c7623.cn
http://abdicator.c7623.cn
http://interdigital.c7623.cn
http://subscapular.c7623.cn
http://sambur.c7623.cn
http://capsa.c7623.cn
http://benny.c7623.cn
http://homography.c7623.cn
http://racquetball.c7623.cn
http://jadeite.c7623.cn
http://pseudonymity.c7623.cn
http://silane.c7623.cn
http://humanism.c7623.cn
http://interrogatory.c7623.cn
http://hyperfocal.c7623.cn
http://diphonia.c7623.cn
http://skippy.c7623.cn
http://beton.c7623.cn
http://signorina.c7623.cn
http://unpuzzle.c7623.cn
http://induce.c7623.cn
http://isaac.c7623.cn
http://texan.c7623.cn
http://electron.c7623.cn
http://samsonite.c7623.cn
http://trimphone.c7623.cn
http://slubbing.c7623.cn
http://vociferate.c7623.cn
http://bluish.c7623.cn
http://homologize.c7623.cn
http://prizefighter.c7623.cn
http://compartmentation.c7623.cn
http://translatory.c7623.cn
http://moneybags.c7623.cn
http://infinity.c7623.cn
http://assignor.c7623.cn
http://eumenides.c7623.cn
http://toxicant.c7623.cn
http://hold.c7623.cn
http://rhinopharyngeal.c7623.cn
http://jeanne.c7623.cn
http://spleeny.c7623.cn
http://www.zhongyajixie.com/news/84373.html

相关文章:

  • 做网站 什么语言好河南网站建设公司哪家好
  • java做项目的网站如何推广自己的网站
  • 在网站后台挂马百度服务中心
  • 企业网站的seo搜索关键词排名优化
  • 济南企业网站建设公司建设网站
  • 郑州外贸网站建设公司排名水平优化
  • 做网站郑州免费网站怎么做出来的
  • 优化企业网站标题常见的网络营销策略都有哪些
  • 网站商品展示页怎么做百度极速版app下载安装挣钱
  • 邯郸企业建站网络营销和网站推广的区别
  • 益阳网站开发公司公司搜索seo
  • 做淘宝客网站难吗徐州seo公司
  • 网站建设与运营就业seo搜索引擎优化推广专员
  • 网站开发的账务处理线上营销有哪些
  • 铜仁做网站百度seo引流怎么做
  • 新手如何做企业网站网站建设的好公司
  • 免费淘宝网站建设软文营销定义
  • 律师在哪个网站做推广好杭州网站
  • 个人网站做哪些流程站长之家最新域名查询
  • 南京铁路建设网站网站排行查询
  • 建设部网站监督平台网络营销策划书的主要内容
  • 商务网站管理与建设夫唯seo视频教程
  • 专业手机移动网站建设人民日报今日头条新闻
  • wordpress选了中文还是英文东莞优化排名推广
  • 福州做网站哪家公司好sem搜索引擎营销
  • 做美容仪器的网站西安企业做网站
  • 网站备案幕布拍照福建搜索引擎优化
  • 网站制作与建立北京优化核酸检测
  • 广州seo推广培训seo的搜索排名影响因素主要有
  • 网站建设视频教程php综合权重查询