Leetcode#117 Populating Next Right Pointers in Each Node II

时间:2021-12-27 08:35:58

原题地址

二叉树的层次遍历。

对于每一层,依次把各节点连起来即可。

代码:

 void connect(TreeLinkNode *root) {
if (!root) return; queue<TreeLinkNode *> parents; parents.push(root);
while (!parents.empty()) {
queue<TreeLinkNode *> children; while (!parents.empty()) {
TreeLinkNode *p = parents.front();
parents.pop();
p->next = parents.empty() ? NULL : parents.front();
if (p->left)
children.push(p->left);
if (p->right)
children.push(p->right);
}
parents = children;
}
}