669. 修剪二叉搜索树
文档和视频讲解:代码随想录(programmercarl.com)
状态:未ac
用时:1h
思路:递归逻辑是,当遇到在区间外的节点时,如果是小于区间最小值,那么该节点左子树一定是小于区间最小值,右子树的不一定小于,因此递归往右子树走,直到找到区间内的右子树。大于区间最大值也是同理。区间内的节点则往它的左右两边递归。递归返回值是树节点指针,中止条件是遇到空指针。
代码:
108.将有序数组转换为二叉搜索树
文档和视频讲解:代码随想录(programmercarl.com)
状态:ac
用时:1h
思路:选取区间内中间数作为中间节点,分割左右两边作为左右子树。递归不需要处理返回值,中止条件未区间左边索引大于右边。
代码:
538.把二叉搜索树转换为累加树
文档和视频讲解:代码随想录(programmercarl.com)
状态:ac
用时:1h
思路:将中序遍历顺序反转,从右到中再到左开始遍历,开始累加即可。
代码: