首页 > 其他分享 >116. 填充每个节点的下一个右侧节点指针

116. 填充每个节点的下一个右侧节点指针

时间:2022-10-15 15:44:34浏览次数:45  
标签:traverse right 116 node1 node2 root 节点 指针

题目描述

给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下:

struct Node {
  int val;
  Node *left;
  Node *right;
  Node *next;
}

填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。

初始状态下,所有 next 指针都被设置为 NULL。
image

参考代码

var connect = function(root) {
    // 定义函数
    const traverse = function(node1,node2){
        if(!node1||!node2) return 
        node1.next = node2
        traverse(node1.left,node1.right)
        traverse(node2.left,node2.right)
        traverse(node1.right,node2.left)
    }
    // 主函数
    if(!root) return root
    traverse(root.left,root.right)
    return root
};

标签:traverse,right,116,node1,node2,root,节点,指针
From: https://www.cnblogs.com/zx529/p/16794307.html

相关文章