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

湖北省建设厅官方网站证书查询做公司网站解析

湖北省建设厅官方网站证书查询,做公司网站解析,佛山家居网站全网营销,wordpress安装包198. 打家劫舍 🔗:198. 打家劫舍 - 力扣(LeetCode)思路:比较简单的动态规划。 一开始没考虑到【2,1,1,2】这种情况应该怎么处理,对于amount[1]的初始化有些问题 代码&am…

198. 打家劫舍

  • 🔗:198. 打家劫舍 - 力扣(LeetCode)
  • 思路:比较简单的动态规划。
    • 一开始没考虑到【2,1,1,2】这种情况应该怎么处理,对于amount[1]的初始化有些问题
  • 代码:
class Solution {public int rob(int[] nums) {//if(nums.length==1) return nums[0]; int[] amount = new int[nums.length];amount[0] = nums[0];// 初始化 amount【1】出错amount[1] = Math.max(nums[0],nums[1]);for(int i=2; i<nums.length; i++){amount[i] = Math.max(amount[i-2]+nums[i],amount[i-1]);}return amount[nums.length-1];}
}

213.打家劫舍II

  • 🔗:213. 打家劫舍 II - 力扣(LeetCode)
  • 思路:
    • 分类讨论,一开始想到了考虑打劫第一个和不打劫第一个需要分开来考虑。但是始终想把他们俩合并到一起考虑,没有想到办法,最后发现实际上官方题解就是用分类的方式。
    • 写的没有官方题解简洁,可以抽象成同一个方法来调用。
  • 代码:
class Solution {public int rob(int[] nums) {int[] amount = new int[nums.length];// 长度为1、2的情况amount[0] = nums[0];if(nums.length==1) return amount[0];amount[1] = Math.max(nums[0],nums[1]);if(nums.length==2) return amount[1];// case1:打劫第一间房for(int i=2; i<nums.length-1; i++){amount[i] = Math.max(nums[i]+amount[i-2],amount[i-1]);}//1+3=4int case1amount = amount[nums.length-2];// case2: 不打劫第一间房amount[1] = nums[1];amount[2] = Math.max(nums[1],nums[2]);for(int i=3; i<nums.length; i++){amount[i] = Math.max(nums[i]+amount[i-2],amount[i-1]);}int case2amount = amount[nums.length-1];return Math.max(case1amount,case2amount);} 
}

337.打家劫舍III

  • 🔗:337. 打家劫舍 III - 力扣(LeetCode)
  • 思路:
    • 非常巧妙的思路。一开始自己写的没有通过第60个用例,没有考虑到【2,1,1,2】这种情况,反了和今日第一题一样的问题,后来照着官方题解的写了一下。
    • 节点可以有两个状态:selected & not selected
      • select:则左右子节点均不能被选择
      • not selected:左右子节点可以被选择,也可以不被选择
  • 代码:
class Solution {public int rob(TreeNode root) {int[] rootStatus = traverse(root);return Math.max(rootStatus[0], rootStatus[1]);}public int[] traverse(TreeNode root){if(root==null)return new int[]{0,0};int[] l = traverse(root.left);int[] r = traverse(root.right);// 当node被选中时,left和right一定不被选中// 所以selected = node的值+left&right不被选中的值int selected = root.val + l[1]+r[1];// 当node不被选中时,left和right可以被选中,也可以不被选中// 因此选取他们的最大值int notSelected = Math.max(l[0],l[1])+Math.max(r[0],r[1]);return new int[]{selected,notSelected};}
}


文章转载自:

http://mORLRKus.pbsfq.cn
http://AFMo3Uhv.pbsfq.cn
http://iuV8y5Nx.pbsfq.cn
http://GfrjDI1R.pbsfq.cn
http://n0nQO5vE.pbsfq.cn
http://W4aJc6ma.pbsfq.cn
http://TRmcXH1L.pbsfq.cn
http://CzKPw3Vr.pbsfq.cn
http://vVN6nAxP.pbsfq.cn
http://A1PGfXQa.pbsfq.cn
http://eg1YGGwC.pbsfq.cn
http://fyKwNCpY.pbsfq.cn
http://rJVsGSc3.pbsfq.cn
http://d9o5gvCb.pbsfq.cn
http://Z2zTKtIN.pbsfq.cn
http://ylPv8jz6.pbsfq.cn
http://6qKS3oPt.pbsfq.cn
http://Q8geyeZz.pbsfq.cn
http://dpEQ45cK.pbsfq.cn
http://ZHW9lTMb.pbsfq.cn
http://MUvZ7OzU.pbsfq.cn
http://BI0tIPnJ.pbsfq.cn
http://nhVqycHL.pbsfq.cn
http://fx7SIIO6.pbsfq.cn
http://nvpDhInj.pbsfq.cn
http://wkE2eaNf.pbsfq.cn
http://XalaOw1W.pbsfq.cn
http://oXhoLwiN.pbsfq.cn
http://tZsVxhU9.pbsfq.cn
http://NshIOR0k.pbsfq.cn
http://www.dtcms.com/wzjs/618487.html

相关文章:

  • 企业网站怎么做产品图片轮播小程序api有哪些
  • 保定企业制作网站开淘宝店怎么做充值网站
  • 一站式服务平台登录网站模板 站长之家
  • 绍兴网站推广排名wordpress 淘宝客 插件
  • 重庆企业网站建设哪家好wordpress 1.0
  • 做企业网站的前景武陟网站建设
  • 建设银网站.net空网站做九九乘法表
  • 济南天桥区网站建设濮阳住房和城乡建设部网站
  • 网站建设的市场定位分析腾讯云服务器网站域名备案
  • 开发板在null不可用整站优化服务
  • 做网站设计的提成点是多少中山外包网站设计
  • 山东网站建设流程wordpress编辑页面没用
  • 绵阳医院网站建设网站流量变现
  • 如何做电影网站资源深圳制作网站服务
  • 金华住房和城乡建设部网站唐山建设网站
  • 简单网站html模板下载地址活动营销推广方案
  • 东莞网站建设提供商上海服装集团网站建设
  • 网站干什么的wordpress店招部分如何设置
  • 网站逻辑结构哈尔滨营销型网站建设公司
  • 网站数据库文件名正邦网站建设 优帮云
  • 东莞做网站推广公司长春网站建设工作
  • 前端素材网站网站建设规模与类别
  • 江阴市住房和城乡建设局网站wordpress文件上传到那个文件
  • 下载爱城市网app官方网站wordpress个人介绍主题
  • 网站设置会员湖南省交通建设质量监督站网站
  • 北京网站建设著名公司模板图片 背景
  • 网站建设培训 上海移动插件WordPress
  • 邢台网站建设费用wordpress设置段落
  • 简单个人博客模板网站wordpress php设置
  • 怎样加快网站收录wordpress目录设置