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

力扣337 打家劫舍 III java实现

337.打家劫舍 III

小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为root

除了root之外,每栋房子有且只有一个“父“房子与之相连。一番侦察之后,聪明的小偷意识到“这个地方的所有房屋的排列类似于一棵二叉树”。 如果两个直接相连的房子在同一天晚上被打劫,房屋将自动报警。

给定二叉树的root。返回在不触动警报的情况下,小偷能够盗取的最高金额

示例 1:

输入:root = [3,2,3,null,3,null,1]输出:7解释:小偷一晚能够盗取的最高金额 3 + 3 + 1 = 7

示例 2:

输入:root = [3,4,5,1,3,null,1]输出:9解释:小偷一晚能够盗取的最高金额 4 + 5 = 9

提示:

  • 树的节点数在[1, 104]范围内
  • 0 <= Node.val <= 104

该题是二叉树形状的打家劫舍的问题,可以用递归来返回选或不选的问题,每层的递归返回一个数组,res[2],其中res[0]表示不选当前节点的最大值,即要计算可选左右孩子节点的最大和,res[1]表示选当前节点,不选当前节点的左右节点的值。

public static void main(String[] args) { // 测试用 TreeNode root = new TreeNode(3); root.left = new TreeNode(2); root.right = new TreeNode(3); root.left.right = new TreeNode(3); root.right.right = new TreeNode(1); System.out.println(rob(root)); } public static int rob(TreeNode root) { int[] res = helper(root); return Math.max(res[0], res[1]); } public static int[] helper(TreeNode root){ int[] res = new int[2]; if (root == null){ return res; } int[] left = helper(root.left); int[] right = helper(root.right); res[0] = Math.max(left[0], left[1]) + Math.max(right[0], right[1]); res[1] = root.val + left[0] + right[0]; return res; }

以上为记录分享用,代码较差请见谅

http://www.jsqmd.com/news/284779/

相关文章:

  • 不同类型的代理服务器解析
  • Vue.js 前端开发实战之 04-Vue 开发基础(3)
  • 红队工具箱:进攻性安全运营的必备工具与技术
  • AMAT 0270-20268
  • 如何判断B2B平台开发服务商的技术硬实力?
  • 学霸同款2026 TOP10 AI论文写作软件:自考毕业论文全攻略
  • 【AI避坑指南】pdfQA基准:表格成“拦路虎“,GPT-120B也栽跟头,大模型开发必看!
  • XSS 攻击(详细) 攻击类型、攻击技巧、攻击工具与平台、防御方法
  • 那些让你头疼的外部群推送难题,真相其实是这样的
  • 学术论文辅助工具盘点:8款顶尖AI翻译与润色软件评测
  • 超重力床在环保领域的具体应用
  • 企微API外部群自动化:快速建立自己的护城河
  • 智能论文写作辅助:八大翻译优化与语言增强工具评测
  • 网络安全 | 深入解析XSS攻击与防御实战
  • 2026年高性价比的钢琴搬运企业,安徽好为民搬家公司实力如何?
  • 大模型开发|RAG系统的“翻译官“上线!问题泛化技术,让AI问答不再“鸡同鸭讲“!
  • 高效学术写作:8种基于AI的翻译与文本润色工具对比
  • 智能会议系统生产厂哪家靠谱,权威榜单来解答
  • Pytest实践:掌握Python中的高级测试技术
  • 后量子加密落地,天翼云PQC筑牢量子时代安全防线
  • 2025年AI超级员工品牌排行榜:智能助手谁更胜一筹,AI智能员工/AI企业员工/AI超级员工/AI员工供应商口碑排行
  • 【震惊】LLM开发“凉凉“?不!突破技术瓶颈,程序员迎来新机遇
  • 2026年国内评价好的不锈钢工业管源头厂家推荐榜单,不锈钢角钢/不锈钢扁钢/不锈钢卷板,不锈钢工业管直销厂家怎么选择
  • 存算分离2.0,阿里云EMR Serverless破解海量数据处理瓶颈
  • 大模型训练新思路:不是教正确答案,而是教如何踩坑!北大RAGShaper引爆AI圈
  • ‌如何平衡代码与生活?开发者的时间管理革命
  • 一篇文章带你搞定企业级完整性能测试流程!
  • 2026年新角色:AI安全工程师的崛起与机遇
  • VS2013旧项目安装K2插件
  • 老牌意大利进口岩板品牌靠谱吗,上海哪家服务和品质都好?