Leetcode_#337_打家劫舍Ⅲ

原题:#337_打家劫舍Ⅲ

  • 节点设置
    • 当前节点为爷爷节点
    • 下一节点为儿子节点
    • 下下节点为孙子节点
  • 偷盗情况
    • 只偷儿子(左儿子、右儿子)
    • 偷爷爷和孙子
public int rob(TreeNode root) {
    if (root == null) return 0;
    int val1 = root.val;	//爷爷节点的值
    if (root.left != null) val1 += rob(root.left.left) + rob(root.left.right);	//爷爷+孙子
    if (root.right != null) val1 += rob(root.right.left) + rob(root.right.right);
    int val2 = rob(root.left) + rob(root.right);//儿子
    return Math.max(val1, val2);
}
原创文章 50 获赞 1 访问量 2925

猜你喜欢

转载自blog.csdn.net/u014642412/article/details/105927362
今日推荐