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

齐大胜请于果做网站是第几集php 网站开发缓存有那几种

齐大胜请于果做网站是第几集,php 网站开发缓存有那几种,网站建设 整改报告,临清轴承网站建设快乐的流畅#xff1a;个人主页 个人专栏#xff1a;《算法神殿》《数据结构世界》《进击的C》 远方有一堆篝火#xff0c;在为久候之人燃烧#xff01; 文章目录 引言一、不同路径二、最长递增子序列三、猜数字大小 ||四、矩阵中的最长递增路径总结 引言 记忆化搜索… 快乐的流畅个人主页 个人专栏《算法神殿》《数据结构世界》《进击的C》 远方有一堆篝火在为久候之人燃烧 文章目录 引言一、不同路径二、最长递增子序列三、猜数字大小 ||四、矩阵中的最长递增路径总结 引言 记忆化搜索本质上是dfs 备忘录优化相同问题的搜索极大提高算法效率。同时记忆化搜索和普通的动态规划实际上是一样的记忆化搜索是递归的形式而动态规划是递推循环的形式。 一、不同路径 细节 设置备忘录的时候扩大一圈方便处理边界情况mem.resize(m 1, vector(n 1))进入dfs递归先看看备忘录是否存在该值若存在则直接返回if(mem[i][j] ! 0) return mem[i][j]dfs(i, j)表示到(i, j)位置的路径数量dfs(i, j) dfs(i - 1, j) dfs(i, j - 1)初始化 if(i 0 || j 0) return 0if(i 1 j 1) mem[i][j] 1return 1 每次递归结束后将结果存储在备忘录中mem[i][j] dfs(i, j - 1) dfs(i - 1, j) 记忆化搜索版本 class Solution {vectorvectorint mem; public:int dfs(int i, int j){if(mem[i][j] ! 0) return mem[i][j];if(i 0 || j 0) return 0;if(i 1 j 1){mem[i][j] 1;return 1;}mem[i][j] dfs(i, j - 1) dfs(i - 1, j);return mem[i][j];}int uniquePaths(int m, int n){mem.resize(m 1, vectorint(n 1));return dfs(m, n);} };动态规划版本 class Solution { public:int uniquePaths(int m, int n){vectorvectorint dp(m 1, vectorint(n 1));dp[1][1] 1;for(int i1; im; i){for(int j1; jn; j){if(i 1 j 1) continue;dp[i][j] dp[i - 1][j] dp[i][j - 1];}}return dp[m][n];} };二、最长递增子序列 思路 进入dfs递归先看看备忘录是否存在该值若存在则直接返回if(mem[pos] ! 0) return mem[pos]递推关系式当前节点小于子节点时当前节点的最大长度是所有子节点中的最大长度 1dfs函数返回以pos开头的最长递增子序列的长度每次递归结束后将结果存储在备忘录中mem[pos] len 记忆化搜索版本 class Solution {vectorint mem;int n; public:int dfs(vectorint nums, int pos)//返回以pos开头的最长递增子序列的长度{if(mem[pos] ! 0) return mem[pos];int len 1;for(int ipos1; in; i){if(nums[pos] nums[i]){len max(len, dfs(nums, i) 1);}}mem[pos] len;return len;}int lengthOfLIS(vectorint nums){n nums.size();mem.resize(n);int ret 0;for(int i0; in; i){ret max(ret, dfs(nums, i));}return ret;} };动态规划版本 class Solution { public:int lengthOfLIS(vectorint nums){int n nums.size();vectorint dp(n, 1);int ret 0;for(int in-1; i0; --i){for(int ji1; jn; j){if(nums[i] nums[j]){dp[i] max(dp[i], dp[j] 1);}}ret max(ret, dp[i]);}return ret;} };注意记忆化搜索改动态规划与直接动态规划的填表顺序不一样。 三、猜数字大小 || 思路 进入dfs递归先看看备忘录是否存在该值若存在则直接返回if(mem[begin][end] ! 0) return mem[begin][end]dfs函数返回给定区间中获胜的最小金额将begin到end这个大区间分为两个区间取两个区间中的最大金额加上节点本身的金额更新结果取所有结果的最小值返回每次递归结束后将结果存储在备忘录中mem[begin][end] ret class Solution {int mem[201][201]; public:int dfs(int begin, int end){if(begin end) return 0;if(mem[begin][end] ! 0) return mem[begin][end];int ret INT_MAX;for(int ibegin; iend; i){int x dfs(begin, i - 1), y dfs(i 1, end);ret min(ret, i max(x, y));}mem[begin][end] ret;return ret;}int getMoneyAmount(int n){return dfs(1, n);} };四、矩阵中的最长递增路径 思路 进入dfs递归先看看备忘录是否存在该值若存在则直接返回if(mem[i][j] ! 0) return mem[i][j]dfs函数返回从(i, j)位置开始的最长递增路径的长度递推关系式当下一个搜索的位置大于当前位置时当前最长路径长度为所有下一位置的最长长度的最大值 1每次递归结束后将结果存储在备忘录中mem[i][j] ret class Solution {int dx[4] {1, -1, 0, 0};int dy[4] {0, 0, 1, -1};int mem[201][201];int m, n; public:int dfs(vectorvectorint mat, int i, int j){if(mem[i][j] ! 0) return mem[i][j];int ret 1;for(int k0; k4; k){int x i dx[k], y j dy[k];if(x 0 y 0 x m y n mat[x][y] mat[i][j]){ret max(ret, dfs(mat, x, y) 1);}}mem[i][j] ret;return ret;}int longestIncreasingPath(vectorvectorint mat){m mat.size(), n mat[0].size();int ret 0;for(int i0; im; i){for(int j0; jn; j){ret max(ret, dfs(mat, i, j));}}return ret;} };总结 记忆化搜索主要难在递推关系式的推导以及边界情况的把控因为其本质就是动态规划。 当然并不是所有题都很方便将记忆化搜索和动态规划相互转换有些题写成记忆化搜索比较简单有些题写成动态规划比较简单因题而异。 真诚点赞手有余香
文章转载自:
http://www.morning.nj-ruike.cn.gov.cn.nj-ruike.cn
http://www.morning.nytqy.cn.gov.cn.nytqy.cn
http://www.morning.jzykw.cn.gov.cn.jzykw.cn
http://www.morning.zqdzg.cn.gov.cn.zqdzg.cn
http://www.morning.dgwrz.cn.gov.cn.dgwrz.cn
http://www.morning.qlry.cn.gov.cn.qlry.cn
http://www.morning.mmjyk.cn.gov.cn.mmjyk.cn
http://www.morning.ynbyk.cn.gov.cn.ynbyk.cn
http://www.morning.rcmcw.cn.gov.cn.rcmcw.cn
http://www.morning.kxwsn.cn.gov.cn.kxwsn.cn
http://www.morning.qzpw.cn.gov.cn.qzpw.cn
http://www.morning.qtkdn.cn.gov.cn.qtkdn.cn
http://www.morning.trhrk.cn.gov.cn.trhrk.cn
http://www.morning.gtdf.cn.gov.cn.gtdf.cn
http://www.morning.gkmwk.cn.gov.cn.gkmwk.cn
http://www.morning.wsyst.cn.gov.cn.wsyst.cn
http://www.morning.mwns.cn.gov.cn.mwns.cn
http://www.morning.grzpc.cn.gov.cn.grzpc.cn
http://www.morning.xrhst.cn.gov.cn.xrhst.cn
http://www.morning.prmbn.cn.gov.cn.prmbn.cn
http://www.morning.qjsxf.cn.gov.cn.qjsxf.cn
http://www.morning.mnwmj.cn.gov.cn.mnwmj.cn
http://www.morning.tkxr.cn.gov.cn.tkxr.cn
http://www.morning.qqhmg.cn.gov.cn.qqhmg.cn
http://www.morning.xcnwf.cn.gov.cn.xcnwf.cn
http://www.morning.ryfqj.cn.gov.cn.ryfqj.cn
http://www.morning.rpzqk.cn.gov.cn.rpzqk.cn
http://www.morning.sjmxh.cn.gov.cn.sjmxh.cn
http://www.morning.rnqbn.cn.gov.cn.rnqbn.cn
http://www.morning.bpmtg.cn.gov.cn.bpmtg.cn
http://www.morning.rykgh.cn.gov.cn.rykgh.cn
http://www.morning.sltfk.cn.gov.cn.sltfk.cn
http://www.morning.ccyns.cn.gov.cn.ccyns.cn
http://www.morning.fqssx.cn.gov.cn.fqssx.cn
http://www.morning.rwpfb.cn.gov.cn.rwpfb.cn
http://www.morning.tgtrk.cn.gov.cn.tgtrk.cn
http://www.morning.cjqcx.cn.gov.cn.cjqcx.cn
http://www.morning.kjfsd.cn.gov.cn.kjfsd.cn
http://www.morning.xfcjs.cn.gov.cn.xfcjs.cn
http://www.morning.jbxfm.cn.gov.cn.jbxfm.cn
http://www.morning.tzjqm.cn.gov.cn.tzjqm.cn
http://www.morning.wkxsy.cn.gov.cn.wkxsy.cn
http://www.morning.jqkrt.cn.gov.cn.jqkrt.cn
http://www.morning.ntyks.cn.gov.cn.ntyks.cn
http://www.morning.rhnn.cn.gov.cn.rhnn.cn
http://www.morning.sgbss.cn.gov.cn.sgbss.cn
http://www.morning.mtgnd.cn.gov.cn.mtgnd.cn
http://www.morning.gmmxh.cn.gov.cn.gmmxh.cn
http://www.morning.krhkn.cn.gov.cn.krhkn.cn
http://www.morning.drrt.cn.gov.cn.drrt.cn
http://www.morning.twhgn.cn.gov.cn.twhgn.cn
http://www.morning.pqsys.cn.gov.cn.pqsys.cn
http://www.morning.bpmnc.cn.gov.cn.bpmnc.cn
http://www.morning.jfqqs.cn.gov.cn.jfqqs.cn
http://www.morning.dhyzr.cn.gov.cn.dhyzr.cn
http://www.morning.rhqn.cn.gov.cn.rhqn.cn
http://www.morning.kfyjh.cn.gov.cn.kfyjh.cn
http://www.morning.ghjln.cn.gov.cn.ghjln.cn
http://www.morning.gnlyq.cn.gov.cn.gnlyq.cn
http://www.morning.nmngg.cn.gov.cn.nmngg.cn
http://www.morning.ckzjl.cn.gov.cn.ckzjl.cn
http://www.morning.jmspy.cn.gov.cn.jmspy.cn
http://www.morning.dycbp.cn.gov.cn.dycbp.cn
http://www.morning.ccyjt.cn.gov.cn.ccyjt.cn
http://www.morning.mfzyn.cn.gov.cn.mfzyn.cn
http://www.morning.bwqr.cn.gov.cn.bwqr.cn
http://www.morning.gcthj.cn.gov.cn.gcthj.cn
http://www.morning.fstdf.cn.gov.cn.fstdf.cn
http://www.morning.fgxr.cn.gov.cn.fgxr.cn
http://www.morning.dhdzz.cn.gov.cn.dhdzz.cn
http://www.morning.bklkt.cn.gov.cn.bklkt.cn
http://www.morning.dhmll.cn.gov.cn.dhmll.cn
http://www.morning.wmhqd.cn.gov.cn.wmhqd.cn
http://www.morning.rwqj.cn.gov.cn.rwqj.cn
http://www.morning.nbnpb.cn.gov.cn.nbnpb.cn
http://www.morning.jfjpn.cn.gov.cn.jfjpn.cn
http://www.morning.sldrd.cn.gov.cn.sldrd.cn
http://www.morning.kclkb.cn.gov.cn.kclkb.cn
http://www.morning.gynlc.cn.gov.cn.gynlc.cn
http://www.morning.lwyqd.cn.gov.cn.lwyqd.cn
http://www.tj-hxxt.cn/news/245149.html

相关文章:

  • 高端网站开发怎么选腾讯企点电脑版
  • 济源做网站的公司wordpress引入php
  • 信息流网站建设wordpress抓取 ins
  • 页面设计的怎么样济南 网站优化
  • 福建省住房和城乡建设部网站php网站开发基础入门教程
  • 企业网站开发信息亳州做网站
  • 企业应该找什么样的网站建设公司网络运营师资格证
  • 动漫网站建设毕业设计建设微信营销网站制作
  • 网站域名转出集团网站源码
  • 帮人做网站怎么收费家电网站设计方案
  • 网站模板 修改建设淘宝客网站
  • 网站开发设计与实现网站主体注销
  • 盐城做网站需要多少钱中铁建设集团有限公司门户登录
  • 网站 源码 php苏州兼职网站开发
  • 毕业设计做网站代码2021国内最好用免费建站系统
  • 网站关键词调整 收录网络广告宣传平台
  • 网站开发的经费预算建设网站的费用如何入账
  • 石家庄网站推广招聘上海植物租赁做网站
  • 电子商务网站建设子项目好的网站域名
  • 网站建设7个基本流程图wordpress主题模版修改
  • 如何确定竞争对手网站深圳坪山新楼盘
  • 网站运营外包上海网站建设找哪家公司
  • 帮人注册网站 做appwordpress主题 yusi
  • 免费设计app软件石家庄关键词优化软件
  • 益阳市网站建设科技网站建设岗位是干什么的
  • 做网站鞍山辽宁建设网站
  • 网站设计的公司叫什么河北seo优化
  • 做婚礼设计在哪个网站下载素材wordpress模板能修改吗
  • 网站定制一般价格多少邢台做网站名列前茅
  • 公司签约网站看空间