[LeetCode]116. 填充每个节点的下一个右侧节点指针(java实现)

[LeetCode]116. 填充每个节点的下一个右侧节点指针(java实现)
1. 题目2. 读题(需要重点注意的东西)3. 解法4. 可能有帮助的前置习题5. 所用到的数据结构与算法思想6. 总结

1. 题目

2. 读题(需要重点注意的东西)
完美二叉树, 完全二叉树和完满二叉树
思路1(层次遍历,空间复杂度为O(n)):
这是一棵完美二叉树,它的最后一个层级包含 N/2 个节点。广度优先遍历的复杂度取决于一个层级上的最大元素数量。这种情况下空间复杂度为 O(N)
层次遍历,用队列存储每层的节点,每次遍历的时候用p指针指向当前节点:
遍历前n-1个节点,p.next = queue.peek(); 遍历到最后一个节点,需要单独将其next指针置为null,然后将其左右子树加入队列中
思路2(活用next指针):
观察题意,我们得到:
当前节点的左儿子的next

[LeetCode]116. 填充每个节点的下一个右侧节点指针(java实现)最先出现在Python成神之路

版权声明:
作者:zhangchen
链接:https://www.techfm.club/p/24224.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>