这道题真的很拿人

二叉搜索树,做边一直递归,
要有一个前驱pre节点。 递归到上一级的时候 root 就是pre的后继。

最终若返回pre,那么是降序排列,题干要求升序,故保存第一个节点,返回第一个节点。
【多练,多尝试。】

public class Solution {

    TreeNode pre= null;
    TreeNode root=null;
    public TreeNode Convert(TreeNode pRootOfTree) {
        if(pRootOfTree ==null) return null;
        Convert(pRootOfTree.left);
        if(root == null){
            root=pRootOfTree;
        }
        if(pre!=null){
            pRootOfTree.left=pre;
            pre.right=pRootOfTree;
        }
        pre=pRootOfTree;
        Convert(pRootOfTree.right);
        return root;
    }
}