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

光伏电站建设的国家网站wordpress 代码行号

光伏电站建设的国家网站,wordpress 代码行号,小程序和h5的区别和优势,北京冬奥会网页设计动态规划1引言题目509. 斐波那契数70. 爬楼梯746. 使用最小花费爬楼梯小结53. 最大子数组和结语引言 蓝桥杯快开始了啊#xff0c;自从报名后还没认真学过算法有(﹏)′#xff0c;临时抱一下佛脚#xff0c;一起学学算法。 题目 509. 斐波那契数 斐波那契数 自从报名后还没认真学过算法有(﹏)′临时抱一下佛脚一起学学算法。 题目 509. 斐波那契数 斐波那契数 通常用 F(n) 表示形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始后面的每一项数字都是前面两项数字的和。也就是 F(0) 0F(1) 1 F(n) F(n - 1) F(n - 2)其中 n 1 给定 n 请计算 F(n) 。 链接: link 相信这题大家都能闭着眼睛都能写出来了。 这是一个最基础的递推题目 递推公式为**F(n) F(n - 1) F(n - 2)** 1.定义一个数组arr[n1], 用来记录n位置的斐波那契数值 2.定义一个循环变量i 然后进行循环F(i) F(i - 1) F(i - 2) 3.返回arr[n] 代码 int fib(int n){if(n1){return n;}else{int arr[n1];arr[0]0;arr[1]1;for(int i2;in;i){arr[i]arr[i-1]arr[i-2];}return arr[n];} }70. 爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢 示例 1 输入n 2 输出2 解释有两种方法可以爬到楼顶。 1 阶 1 阶2 阶 链接: 爬楼梯 这道题就是斐波那契数列的简单应用只是在斐波那契数列是套了一层外套 1.当你在n阶楼梯时 2.只能由n-1阶时走一步或者在n-2阶时走两步 3.所以爬到n阶的方法总数等于爬n-1阶时的方法数加上爬到n-2阶的方法数 也就是F(n)F(n-1)F(n-2)状态转移方程 代码 int climbStairs(int n){int arr[46]{1,1};for(int i2;in;i){arr[i]arr[i-1]arr[i-2];}return arr[n]; }746. 使用最小花费爬楼梯 给你一个整数数组 cost 其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用即可选择向上爬一个或者两个台阶。 你可以选择从下标为 0 或下标为 1 的台阶开始爬楼梯。 请你计算并返回达到楼梯顶部的最低花费。 示例 1 输入cost [10,15,20] 输出15 解释你将从下标为 1 的台阶开始。 支付 15 向上爬两个台阶到达楼梯顶部。 总花费为 15 。 示例 2 输入cost [1,100,1,1,1,100,1,1,100,1] 输出6 解释你将从下标为 0 的台阶开始。 支付 1 向上爬两个台阶到达下标为 2 的台阶。支付 1 向上爬两个台阶到达下标为 4 的台阶。支付 1 向上爬两个台阶到达下标为 6 的台阶。支付 1 向上爬一个台阶到达下标为 7 的台阶。支付 1 向上爬两个台阶到达下标为 9 的台阶。支付 1 向上爬一个台阶到达楼梯顶部。 总花费为 6 。 提示 2 cost.length 1000 0 cost[i] 999 链接: 使用最小花费爬楼梯 这题和之前的爬楼梯很相似只是从求方案数到求最小值。 求解思路 当你在 n 阶楼梯时 只能由 n-1 阶时走一步或者在 n-2 阶时走两步 当选择走 n-1 其花费也是走到 n-1 步时的最小花费加上走这一步的花费 n-2 其花费也是走到 n-2 步时的最小花费加上走这一步的花费 arr[n]值就是两者之间的最小值 定义一个数组arr[1001],用来存储走到n阶楼梯时的最小花费 我们可以得出状态转移方程为 arr[i]min(arr[i-1]cost[i-1],arr[i-2]cost[i-2]) 代码 int min(int a,int b) {if(ab)return b;return a; }int minCostClimbingStairs(int* cost, int costSize){int arr[1001]{0,0};for(int i2;icostSize;i){arr[i]min(arr[i-1]cost[i-1],arr[i-2]cost[i-2]); }return arr[costSize]; }小结 从上述三题可以看出动态规划的大致流程 1.设计状态 2.写出状态转移方程 3.设定初始状态 4.执行状态转移 5.返回最终的解 接下来我们在看一个题 53. 最大子数组和 给你一个整数数组 nums 请你找出一个具有最大和的连续子数组子数组最少包含一个元素返回其最大和。 子数组 是数组中的一个连续部分。 示例 1 输入nums [-2,1,-3,4,-1,2,1,-5,4] 输出6 解释连续子数组 [4,-1,2,1] 的和最大为 6 。 示例 2 输入nums [1] 输出1 题解 定义一个dp[100001]数组用于储存以nums[n]为结尾的子数组的和的最大值。 然后根据题意可知dp[n]的值有两种情况 第一种 当dp[n-1]0时表示的是以nums[n-1]结尾的所有子数组的最大值小于0此时dp[n]的值应该是arr[n]的值因为一个数加上一个小于0的数总比原数小。 第二种 当dp[n-1]0时dp[n]的值应该取dp[n-1]和dp[n-1]nums[n]这两数中的最大值 可得状态转移方程为dp[n]max(dp[n-1]nums[n],nums[n]) 设置初始状态 dp[0]arr[0] 代码 int max(int i,int j) {if(ij)return i;return j; }int maxSubArray(int* nums, int numsSize){int dp[100001]{};dp[0]nums[0];int maxvalnums[0];for(int n1;nnumsSize;n){dp[n]max(dp[n-1]nums[n],nums[n]);maxvalmax(maxval,dp[n]);}return maxval; }结语 本期动态规划就到这了 我是Tom-猫 如果觉得有帮助的话记得 一键三连哦ヾ(≧▽≦*)o。
http://www.ho-use.cn/article/10823526.html

相关文章:

  • 南京网站建设培训温州网站制作要多少钱
  • 新浪云建设自己的网站360免费建站官网入口
  • 网站域名自动跳转开发商是不是建设单位
  • 重庆荣昌网站建设公司影视会员网站怎么建设
  • 做服装网站服务电商网站设计流程
  • 邢台网站制作怎么样深圳通公司网站
  • 高平网站优化公司wordpress标签拼音
  • 电商网站怎样优化网站开发 项目介绍
  • 哈尔滨专业官网建站企业中国半导体设备
  • pathon能做网站开发吗学it需要什么学历基础
  • 免费视频网站怎么赚钱wordpress移动版主题
  • 杭州市网站建设企业歌曲制作
  • 响应式网站建站工具建立网站站点
  • 网站综合建设笔记商洛市住房和城乡建设局网站
  • 南通网站建设知识网站推广 2015谷歌
  • 任丘网站制作公司视频不可添加橱窗入口
  • 杭州知名建设网站设计设计网站 问题
  • 潍坊市住房和城乡建设局官方网站国内建筑设计公司排名
  • 做视频的素材网站制作图片模板
  • 哪个网站可以建设网站影视广告宣传片制作公司
  • 中文网站建设模板下载wordpress邮件发送功能无法开启
  • 兰溪建设网站蝉知cms
  • 浙江建设信息港网站考试成绩查询河南网站建设价格大全
  • 制作网站联系方式吃什么补肾快
  • 免费网站制作软件的app东营建设信息网网
  • 网站栏目设计模板网站制作是怎么做的
  • 开发网站需求设计重庆好玩还是成都好玩
  • 南昌做网站费用小公司怎么做网站
  • 网站模板的使用微信 网站提成方案点做
  • 怎样建一个自己的网站莱芜搬家公司电话