每日一题《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;

}
相关推荐
超级皮皮2 小时前
力扣热题之stack
算法·leetcode·职场和发展
weixin_470740362 小时前
某算法的python执行汇编
汇编·python·算法
是乐谷3 小时前
燧原科技招大模型训练算法工程师
科技·算法
YuTaoShao3 小时前
【LeetCode 热题 100】139. 单词拆分——(解法一)记忆化搜索
java·算法·leetcode·职场和发展
圣保罗的大教堂4 小时前
leetcode 1277. 统计全为 1 的正方形子矩阵 中等
leetcode
小马学嵌入式~4 小时前
数据结构:队列 二叉树
c语言·开发语言·数据结构·算法
焊锡与代码齐飞6 小时前
嵌入式第三十五课!!Linux下的网络编程
linux·运维·服务器·开发语言·网络·学习·算法
省四收割者6 小时前
Go语言入门(10)-数组
数据结构·经验分享·笔记·vscode·算法·golang
lxmyzzs7 小时前
【图像算法 - 21】慧眼识虫:基于深度学习与OpenCV的农田害虫智能识别系统
人工智能·深度学习·opencv·算法·yolo·目标检测·计算机视觉
KeithTsui7 小时前
GCC C语言整数转换的理解(Understanding of Integer Conversions in C with GCC)
c语言·开发语言·算法