相同点
1.都要考虑任意一个节点与res的关系
2.都可以获取节点往上到根节点的信息
不同点
1.遍历从节点考虑与res的关系,而推导则从子树整体考虑与res的关系
2.遍历可以获取子树的其他信息,而推导则只能获取子树的相同信息。
注意
1.遍历时全局变量位置不能随意更改。推导可以。
见94 144
2.需要修改节点时,遍历使用引用,而推导不用
见1325,617
3.推导不一定都要接受返回
见226
题单
01 700. 二叉搜索树中的搜索(1/2)
02 404. 左叶子之和(1/2)
03 1325. 删除给定值的叶子节点(1/2)
04 617. 合并二叉树(1/2)
05 938. 二叉搜索树的范围和(1/2)
06 116. 填充每个节点的下一个右侧节点指针▲(3/1/2)
07 572. 另一棵树的子树(1/2)
08 1367. 二叉树中的列表(1/2)
09 226. 翻转二叉树(1/2)
节点接不接受子树返回都行。
因为子树不会修改节点的子节点。
10 112. 路径总和
11 113. 路径总和 II
vector 队首添加元素
12 897. 递增顺序搜索树
可以看出推导容易,遍历难写出。