思路:和116题一模一样
struct Node* connect(struct Node* root) {
if(root==NULL)
return root;
struct Node *queue[10000];
struct Node *cur;
int front = 0, rear = 0;
queue[rear++] = root;
while(front!=rear){
int last = rear;
int size = last - front;
for(int i = 0;i<size; i++){
cur = queue[front++];
if(i<size-1)
cur->next = queue[front];
if(cur->left !=NULL)
queue[rear++] = cur->left;
if(cur->right!=NULL)
queue[rear++] = cur->right;
}
}
return root;
}