LeetCode Algorithm 116. 填充每个节点的下一个右侧节点指针
Posted Alex_996
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode Algorithm 116. 填充每个节点的下一个右侧节点指针相关的知识,希望对你有一定的参考价值。
Ideas
通过示例图可以很明显的看出来,next指针指向每一层的下一个节点,所以肯定跟二叉树的层序遍历有关。
然后,,,就没有然后了,层序遍历稍微改一下逻辑就可以了。
Code
Python
class Solution:
def connect(self, root: 'Optional[Node]') -> 'Optional[Node]':
if not root:
return root
queue = deque([root])
while queue:
size = len(queue)
for i in range(size):
node = queue.popleft()
if i < size - 1:
node.next = queue[0]
if node.left:
queue.append(node.left)
if node.right:
queue.append(node.right)
return root
以上是关于LeetCode Algorithm 116. 填充每个节点的下一个右侧节点指针的主要内容,如果未能解决你的问题,请参考以下文章