一、669. 修剪二叉搜索树
思路:1.确定函数参数和返回值 2.确定中止条件 3.写单层递归 误区:在处理root的时候,如果其值在范围内,就对其左右进行处理。如果root的值比low小就在右边搜索是否还有满足条件的,如果比high大就在左边搜索是否还有满足条件的。
二、 108.将有序数组转换为二叉搜索树
思路:1.确定终止条件 2.找到中间节点 3.进行区间划分继续递归 这题和后序,中序构造二叉树思路一样。
三、538.把二叉搜索树转换为累加树
思路:这题有一个难点,就是知道怎么从二叉搜索树的最小值递归到最大值,但是不知道如何从最大的值递归到最小的值。如何实现:右中左的递归顺序。然后就是递归三步曲 1.确定函数参数和返回值 2.确定终止条件 3.写单层递归逻辑 因为这里是遍历完一遍就变成了累加树所以可以不需要返回值。