力扣原题:897. 递增顺序查找树

解题

中序遍历 + 更改树的连接方式

  1. function increasingBST(root) {
  2. const node = new TreeNode(0);
  3. let cur = node;
  4. dp(root);
  5. function dp(node) {
  6. if (node === null) return;
  7. dp(node.left);
  8. node.left = null;
  9. cur.right = node;
  10. cur = node;
  11. dp(node.right);
  12. }
  13. return node.right;
  14. }
  1. 创建一个根节点,和一个 cur;
  2. cur 开始指向根节点;
  3. dp 循环到左页节点;
  4. 将 left 指向 null;
  5. cur 的右节点指向当前节点;
  6. cur 指向当前节点;
  7. 递归循环当前节点的右子树;循环上述步骤;