修剪二叉搜索树
这道题不能直接写删除代码 因为要涉及父子关系的保留
如
这样是暴力删掉不符合区间的节点
但是没有保留父子关系
这里我们把不符合区间的节点通过一个临时节点传递出来
然后在外面合适方向接住
具体怎么接住的呢
其实就是对于root来说
左边子树抛出的节点 就会在左边被接上 因为有个root->left 去接收这样的节点
将有序数组转换为二叉搜索树
因为是二叉搜索树 而且要求高度平衡
所以这里的想法就是从中间开始构造
然后第一层的left就是mid - 1 right 就是 mid + 1
然后两边压缩范围构筑这棵树
把二叉搜索树转换为累加树
从后往前累加就行
不需要记录pre指针 记录数值就行
遍历顺序从树上看就是右中左