669. 修剪二叉搜索树
文档讲解:修建二叉搜索树
思路:
还是采用了前面增加和删除的想法,假如一个结点的左孩子结点p小于范围,则把p结点的右结点返回上一层,
if (root.val < low){
return trimBST(root.right, low, high);
}
传给p结点的父结点做左孩子。
root.left = trimBST(root.left, low, high);
遇到的问题:
不能让树断裂,递归要连上。
108.将有序数组转换为二叉搜索树
文档讲解:有序数组转搜索树
思路:
不断中间分割,然后递归处理左区间,右区间。
遇到的问题:
注意循环不变量问题
538.把二叉搜索树转换为累加树
文档讲解:搜索树转累加树
思路:
右中左反中序遍历即可完成叠加。
遇到的问题:
一开始没看懂题。。。
总结
既是结束又是开始。。。