- 题目链接 897. Increasing Order Search Tree
- 题目意思
- 题目让我们按数字的递增顺序把树展平。
- 题目解答
- 用一个全局变量pre当作前一个展好的节点,用dfs分治思想,先展好root左边部分,在处理好当前节点,最后dfs处理右部分节点。
TreeNode pre = null;
public TreeNode increasingBST(TreeNode root) {
TreeNode res = new TreeNode(0);
pre = res;
dfs(root);
return res.right;
}
private void dfs(TreeNode root) {
if (root == null) return;
dfs(root.left);
root.left = null;
pre.right = root;
pre = root;
dfs(root.right);
}