每日一题《leetcode--117.填充每个结点的下一个右侧结点指针||》

https://leetcode.cn/problems/populating-next-right-pointers-in-each-node-ii/


这道题与我之前发布的题目116是一样的解题过程,只是本题所给的数组大小与116不同,这是需要注意的。

116题目链接:

http://t.csdnimg.cn/3Ub02

struct Node* connect(struct Node* root) {
	if(root == NULL)
    {
        return root;
    }

    //创建一个队列同时将第一层节点加入队列中
    struct Node* Q[10001];
    int left = 0, right = 0;
    Q[right++] = root;

    //while循环的迭代是层数
    while(left < right)
    {
        //记录的当前队列的大小
        int size = right - left;
        for(int i=0 ; i < size;i++)
        {
            //取出队头元素
            struct Node* node = Q[left++];

            //链接
            if(i < size-1)
            {
                node->next = Q[left];
            }

            //拓展下一层的节点
            if(node->left)
            {
                Q[right++] = node->left;
            }
            if(node->right)
            {
                Q[right++] = node->right;
            }
        }
    }
    //返回根节点
    return root;

}
相关推荐
仟濹21 分钟前
【前缀和与差分 二分搜索 C/C++】洛谷 P1083 借教室
c语言·c++·算法
weixin_4481199423 分钟前
Datawhale coze-ai-assistant 笔记1
笔记
xinxiangwangzhi_41 分钟前
多视图几何--从线性变换到射影变换--2线性变换
人工智能·算法·计算机视觉
是星辰吖~1 小时前
C语言_数据结构_栈
c语言·数据结构
AI技术控1 小时前
计算机视觉算法实战——昆虫识别检测(主页有源码)
人工智能·算法·计算机视觉
hellolianhua2 小时前
大数据hadoop课程笔记
大数据·hadoop·笔记
你的微笑像拥抱2 小时前
vscode 源代码管理
笔记
技术干货贩卖机2 小时前
0基础 | 看懂原理图Datasheet 系列1
笔记·stm32·单片机·嵌入式硬件·学习
西猫雷婶2 小时前
python学智能算法(七)|KNN邻近算法
算法