leetcode-116. 填充每个节点的下一个右侧节点指针
题目:
代码:
#include <iostream>
#include <queue>
using namespace std;
struct Node{
int val;
Node *left,*right,*next;
};
Node* connect(Node* root) {
if(!root){
return root;
}
Node *r=root;
queue<Node*> q;
q.push(r);
while(!q.empty()){
int size=q.size();
for(int i=0;i<size;i++){
Node *node=q.front();
q.pop();
if(i==size-1){
node->next=NULL;
}else{
node->next=q.front();
}
if(node->left){
q.push(node->left);
}
if(node->right){
q.push(node->right);
}
}
}
return root;
}
int main(){
Node* res;
res=connect(Node* root);
return 0;
}