Populating Next Right Pointers in Each Node II LeetCode[通俗易懂]

Populating Next Right Pointers in Each Node II LeetCode

大家好,又见面了,我是全栈君。

Populating Next Right Pointers in Each Node II

 
Total Accepted: 18934 
Total Submissions: 62031
My Submissions

Follow up for problem “Populating Next Right Pointers in Each Node“.

What if the given tree could be any binary tree? Would your previous solution still work?

Note:

  • You may only use constant extra space.

For example,
Given the following binary tree,

         1
       /  \
      2    3
     / \    \
    4   5    7

After calling your function, the tree should look like:

         1 -> NULL
       /  \
      2 -> 3 -> NULL
     / \    \
    4-> 5 -> 7 -> NULL

Have you been asked this question in an interview? 

/**
 * Definition for binary tree with next pointer.
 * public class TreeLinkNode {
 *     int val;
 *     TreeLinkNode left, right, next;
 *     TreeLinkNode(int x) { val = x; }
 * }
 */
public class Solution {
    public void connect(TreeLinkNode root) {
        if (root == null){
            return ;
        }
        Queue<TreeLinkNode> queue = new LinkedList<TreeLinkNode>();
        queue.offer(root);
        while(!queue.isEmpty()){
            int qSize = queue.size();
            TreeLinkNode preNode = null;
            for (int i = 0; i < qSize; i++){
                TreeLinkNode curNode = queue.poll();
                curNode.next = preNode;
                preNode = curNode;
                if (curNode.right != null){
                    queue.offer(curNode.right);
                }
                if (curNode.left != null){
                    queue.offer(curNode.left);
                }
            }
        }
    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/115891.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • jemter安装mysql数据驱动JDBC

    jemter安装mysql数据驱动JDBC

  • CubieBoard2串口

    CubieBoard2串口CubieBoard2串口

  • Linux下7z文件解压

    Linux下7z文件解压安装:apt-getinstallp7zip-full解压实例:7zxfilename.7z

  • JetBrains WebStorm 安装教程

    JetBrains WebStorm 安装教程首先声明,此方法仅用来参考学习,不得用于商业用途,请支持正版,学生可以免费申请到正版软件。网上有很多激活成功教程方法,可能不同的版本不一样,这篇文章就只针对JetBrainsWebStorm2018.1.5×64版本的软件。因为本人用的就是这个版本,亲测有效。——————2019年10月首先需要下载一个jar包:JetbrainsIde…

  • 源码网_论文管理系统源码

    源码网_论文管理系统源码1.LaTeX源码%-*-coding:UTF-8-*-\documentclass[UTF8]{ctexart}\usepackage{multicol}%数学包,这里没用到%\usepackage{amsmath}\usepackage{indentfirst}%添加作者信息\usepackage{authblk}\usepackage{graphicx}%设置…

    2022年10月28日
  • SPPNet算法解析

    SPPNet算法解析前言沿着RCNN的思路,我们继续探索目标检测的痛点,其中RCNN使用CNN作为特征提取器,首次使得目标检测跨入深度学习的阶段。但是RCNN对于每一个区域候选都需要首先将图片放缩到固定的尺寸(224*224),然后为每个区域候选提取CNN特征。容易看出这里面存在的一些性能瓶颈:速度瓶颈:重复为每个regionproposal提取特征是极其费时的,SelectiveSearch对于每幅图…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号