[LeetCode] Populating Next Right Pointers in Each Node

题目链接

void connect(TreeLinkNode *root) {
	TreeLinkNode* level_head = root;
	while(level_head != NULL)
	{
		TreeLinkNode* next_level_head = NULL;
		if(level_head->left != NULL)
		{
			next_level_head = level_head->left;
		}
		TreeLinkNode* cur_level_node = level_head;
		while(cur_level_node != NULL)
		{
			if(next_level_head != NULL)
			{
				cur_level_node->left->next = cur_level_node->right;
				if(cur_level_node->next != NULL)
				{
					cur_level_node->right->next = cur_level_node->next->left;
				}                        
			}
			cur_level_node = cur_level_node->next;
		}           
		level_head = next_level_head;
	}
}

你可能感兴趣的:(LeetCode,刷题)