Given a binary tree
struct Node {
int val;
Node *left;
Node *right;
Node *next;
}
Populate each next pointer to point to its next right node. If there is no next right node, the next pointer should be set to NULL.
Initially, all next pointers are set to NULL.
Follow up:
- You may only use constant extra space.
- Recursive approach is fine, you may assume implicit stack space does not count as extra space for this problem.
Example 1:

Input: root = [1,2,3,4,5,null,7]
Output: [1,#,2,3,#,4,5,7,#]
Explanation: Given the above binary tree (Figure A), your function should populate each next pointer to point to its next right node, just like in Figu

这篇博客介绍了如何在LeetCode问题‘Populating Next Right Pointers in Each Node II’中,通过递归和迭代两种方法为二叉树的每个节点建立指向右边相邻兄弟节点的指针。递归解法强调必须先处理右子树,而迭代解法利用队列进行层序遍历。在迭代解法中,还引入了一个dummy节点来辅助连接下一层的首节点。
最低0.47元/天 解锁文章
585

被折叠的 条评论
为什么被折叠?



