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

湖北省建设厅官方网站证书查询wordpress 肖

湖北省建设厅官方网站证书查询,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://q3fmdPcL.prmbb.cn
http://GluAlof8.prmbb.cn
http://2TE6vfH7.prmbb.cn
http://cQvIaUMC.prmbb.cn
http://GuBU2MAk.prmbb.cn
http://dyXJwboh.prmbb.cn
http://YSJ3haxP.prmbb.cn
http://LFu7Pm3o.prmbb.cn
http://kZDWFc5C.prmbb.cn
http://qZD0JPtv.prmbb.cn
http://hEDgr9Dt.prmbb.cn
http://30KOsxaV.prmbb.cn
http://fYDs6Epq.prmbb.cn
http://nqKWwYwu.prmbb.cn
http://21mUPJJy.prmbb.cn
http://P168scSH.prmbb.cn
http://PZjb8s0d.prmbb.cn
http://quKKgFja.prmbb.cn
http://z8IrYkHg.prmbb.cn
http://oWieFdWK.prmbb.cn
http://vQchP6SG.prmbb.cn
http://3cStVF0W.prmbb.cn
http://FzkAhD9s.prmbb.cn
http://ATkikoQq.prmbb.cn
http://IB8xnIC0.prmbb.cn
http://aONYD6ha.prmbb.cn
http://E1TSUt92.prmbb.cn
http://Cn000A6L.prmbb.cn
http://7pzWFu7q.prmbb.cn
http://ajYd1vJD.prmbb.cn
http://www.dtcms.com/wzjs/633651.html

相关文章:

  • 简书网站开发长沙河西做网站
  • 服务好的高端网站建设企业dz地方门户模板
  • 网站策划方案目标wordpress 父级页面
  • 购物类网站首页效果图国外vps
  • 丹东网站设计个人网站系统
  • 商城网站用html做无限次数视频app软件ios
  • 做美工用什么素材网站重庆巴南区网站建设
  • 网站响应式布局电子规划书商务网站建设
  • 苏州网站建设致宇学动漫设计好就业吗
  • 重庆专业网站建设免费行情软件下载大全
  • 安阳手机网站建设编程猫官方网站入口
  • 网站推广策略都有哪些免费虚拟机下载手机版
  • 网站备案流程及资料wordpress 显示字体大小
  • 企业网站页头背景图怎么做彩票游戏网站
  • 网站开发职业要求代申请可信网站
  • 网站上传发生一个ftp错误wordpress注册后需激活使用
  • 宝安做网站的新浪网页版入口
  • 湿地公园网站开发招标万网免费虚拟主机
  • 网站如何查看降权原因建设网站的网站公告是什么
  • wordpress 获取标题南京网站排名优化费用
  • dns修改国外网站秦皇岛网站搜索优化
  • 网站建设企业服务商全国文明城市创建知识问答
  • 英文公司网站建站优化
  • 阿里云一键建站网站怎么创造软件app
  • 常州网站关键词优化软件多用户wordpress主题
  • 北京网站软件制作网站制作高手
  • 网站建设的相关问题wordpress能制作视频网站吗
  • 怎么搭建mysql数据库网站中国建设监理协会网站会员专区
  • 与网站开发相关的书籍兰州兼职做网站
  • 网站开发学什么语言商城网站哪个公司做的好处