摘要: 思路: 直接进行同步的DFS比较即可,首先要确定什么条件返回true,什么时候返回false 返回true即遍历到叶子节点,返回false则是某个节点值不相同,包括val不同和结构不同(即分支数和分支方向不同) 代码: /** * Definition for a binary tree node. 阅读全文
posted @ 2021-04-15 20:18 Mrsdwang 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 思路: 要求找离根节点最近的叶子节点,那么就DFS遍历下去,定义一个数来记录当前的节点到最近的叶子节点的距离,然后每次递归得到的距离都和这个最近距离比较,如果小就更新。 代码: /** * Definition for a binary tree node. * struct TreeNode { 阅读全文
posted @ 2021-04-15 20:06 Mrsdwang 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 思路: 最近发现动规很多都是从后面开始想,这题就是先考虑,第一个房子不偷和最后一个房子不偷的情况。 第一个房子不偷,就是nums[1:],最大金额是P2,最后一个房子不偷,就是nums[:n-1],最大金额是P1,那么取max(P2,P1) 对于第n个房子,如果偷了第n-1个房子,那么第n个就不偷, 阅读全文
posted @ 2021-04-15 11:51 Mrsdwang 阅读(24) 评论(0) 推荐(0) 编辑