平衡二叉树递归总结
class Solution {
int sum = 0;
public TreeNode convertBST(TreeNode root) {
if(root != null){
convertBST(root.right);
sum = root.val + sum;
root.val = sum;
convertBST(root.left);
return root;
}
return null;
}
}
心得:1.执行多个递归函数时,是单线程执行。在第一个递归执行到底的情况下再执行下面的递归。2.平衡二叉树是右子树大于跟节点根节点大于左子树。3.注意每次递归要执行的内容,比如上述题目递归要执行的主要是加法后赋值给val。