Hot100:二叉树展开为链表(Flatten Binary Tree to Linked List)反向先序重连 ACERS 解析
副标题 / 摘要 LeetCode 114 的真正难点不是把树“拍平”,而是想清楚重连顺序。只要抓住“目标链表等于先序遍历顺序”,再把处理方向反过来,prev 指针会让整题变成一段非常稳定的原地递归。 预计阅读时长:12~15 分钟 标签:Hot100、二叉树、先序遍历、原地修改、递归 SEO 关键词:Flatten Binary Tree to Linked List, 二叉树展开为链表, 先序遍历, 原地修改, 反向先序, LeetCode 114 元描述:系统讲透 LeetCode 114 的反向先序重连思路,解释 prev 指针为什么有效,并补充工程迁移、复杂度与进阶 O(1) 方案。 A — Algorithm(题目与算法) 题目还原 给你一棵二叉树,请把它原地展开成一个“只沿 right 指针连接”的单链表。 展开后要满足两条规则: 每个节点的 left 都必须变成 null 沿 right 走出来的顺序,必须与原树的先序遍历顺序完全一致 输入输出 名称 类型 描述 root TreeNode 二叉树根节点 返回值 无 原地修改 root 示例 1 输入:root = [1,2,5,3,4,null,6] 输出:[1,null,2,null,3,null,4,null,5,null,6] 示例 2 输入:root = [] 输出:[] 示例 3 输入:root = [0] 输出:[0] 提示 树中结点数在范围 [0, 2000] 内 -100 <= Node.val <= 100 进阶 你可以使用原地算法(O(1) 额外空间)展开这棵树吗? ...