首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
填充每个节点指向最右节点的next指针 ii
[编程题]填充每个节点指向最右节点的next指针 ii
热度指数:16146
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32M,其他语言64M
算法知识视频讲解
继续思考
"填充每个节点指向最右节点的next指针" 这道题
如果给定的树可以是任意的二叉树呢?你之前的给出的算法还有效吗?
注意:
你只能使用常量的额外内存空间
例如:
给出的二叉树如下:
调用完你给出的函数之后,这棵树应该变成:
说明:本题目包含复杂数据结构TreeLinkNode,
点此查看相关信息
马上挑战
算法知识视频讲解
提交运行
算法知识视频讲解
添加笔记
求解答(18)
邀请回答
收藏(111)
分享
提交结果有问题?
97个回答
4篇题解
开通博客
一叶浮尘
发表于 2020-04-04 17:00:58
继续思考"Populating Next Right Pointers in Each Node".这道题如果给定的树可以是任意的二叉树呢?你之前的给出的算法还有效吗?注意:你只能使用常量的额外内存空间层次遍历方法简单修改之后就能解决这道题目。改写之前的递归做法应该也能解决问题。 层次遍历也完全不
展开全文
华科不平凡
发表于 2020-08-21 17:42:36
题目要求空间复杂度为常数级别,因此不能用递归或者使用队列辅助。 如果当前层中节点的next指针已经填充完毕,那么我们很容易根据当前层去填充下一层,只需要“记住”下一层的最左侧节点,即可通过循环实现题目的目标。在这里引入哑节点记录下一层最左侧节点。 另外的话,由于题中二叉树不是满二叉树或者完全二叉树,
展开全文
O-Precedence
发表于 2021-09-08 12:46:55
import java.util.*; public class Solution { public void connect(TreeLinkNode root) { if(root==null) return ; Queue<
展开全文
牛客448599388号
发表于 2021-02-08 10:01:47
如果是常量级空间复杂度 但我看通过答案 使用的变量都与树的高度有关系 这也算常量级的么
问题信息
树
难度:
97条回答
111收藏
26521浏览
热门推荐
通过挑战的用户
查看代码
牛客38441...
2022-09-14 11:11:02
牛客58603...
2022-09-13 09:50:02
牛客72674...
2022-09-12 17:11:27
牛客61312...
2022-09-11 15:06:47
Varus20...
2022-08-20 14:25:19
相关试题
分页系统的逻辑地址结构是一维的,分...
操作系统
评论
(1)
未来工作城市的选择是怎样的?
通用能力
评论
(1)
你说在销售运营这个岗位上会涉及到一...
评论
(1)
相关性分析有哪些?
评论
(1)
如何检验聚类分析结果
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题
import java.util.*; /** * 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) { } }
/** * Definition for binary tree with next pointer. * struct TreeLinkNode { * int val; * TreeLinkNode *left, *right, *next; * TreeLinkNode(int x) : val(x), left(NULL), right(NULL), next(NULL) {} * }; */ class Solution { public: void connect(TreeLinkNode *root) { } };