1、对于LeetCode236题二叉树的最近公共祖先。最简单的思路便是用一个HsahMap来存储当前位置的节点的val和其上一层的TreeNode。
为什么这一层的val和上一层的节点对应呢。因为思路是由底至上扫描。我们需要从一个子节点向上访问。
2、对于LeetCode199二叉树的右视图。一个很巧妙的解题方法是延伸二叉树的先序遍历。本人在之前从来没有觉得各种遍历到底有什么用,而且为什么要有前、中、后三种遍历方式。
通过此道题方使本人对于先人所提出的想法有了初步的认识。
这道题还使得本人对于递归有了一点新的认识。每一层最先访问的点是right节点,那么其下一层依旧是最外面的,这就很妙。再比对一下层数,便解决了此题。
3、不要因为看多了一切巧思妙构而忘记了暴力。
private int gcd(int a, int b) {
if (b == 0) { return a; } return gcd(b, a % b); } 标签:总结,一层,遍历,val,int,每日,二叉树,节点 From: https://www.cnblogs.com/xtag/p/16705511.html