当前位置: 首页 > news >正文

一个设计网站多少钱全域seo

一个设计网站多少钱,全域seo,优礼品网站模板,吴江seo排名leetcode116:填充每个节点的下一个右侧节点指针 leetcode原题链接:题目描述递归解法一递归方法二(效率更高)二叉树专题 leetcode原题链接: 116题:填充每个节点的下一个右侧节点指针 题目描述 给定一个 完美二叉树 &a…

leetcode116:填充每个节点的下一个右侧节点指针

  • leetcode原题链接:
  • 题目描述
  • 递归解法一
  • 递归方法二(效率更高)
  • 二叉树专题

leetcode原题链接:

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

题目描述

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

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

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

在这里插入图片描述
输入:root = [1,2,3,4,5,6,7]
输出:[1,#,2,3,#,4,5,6,7,#]
解释:给定二叉树如图 A 所示,你的函数应该填充它的每个 next 指针,以指向其下一个右侧节点,如图 B 所示。序列化的输出按层序遍历排列,同一层节点由 next 指针连接,‘#’ 标志着每一层的结束。

示例2
输入:root = []
输出:[]

提示:
树中节点的数量在 [0, 212 - 1] 范围内
-1000 <= node.val <= 1000

进阶:
你只能使用常量级额外空间。
使用递归解题也符合要求,本题中递归程序占用的栈空间不算做额外的空间复杂度。

递归解法一

解题思路:
这题在递归中,主要思考点就是,递归左树和右树时。不是同一个头节点的子树时,怎么样把左树链接到右树上去。如上图中五和六节点在递归过程中,这两个点,并没在同一个递归过程中。就无法链接起来,因此我们要修改下递归过程,把左右树同时递归,这样在同一个过程里,就可以看见兄弟节点了。代码演示如下。

  public Node connect(Node root) {if(root == null){return root;}process(root.left,root.right);return root;}public void process(Node root1,Node root2){if(root1 == null || root2 == null){return ;}root1.next = root2;//左树内部链接起来。process(root1.left,root1.right);//右树内部链接起来process(root2.left,root2.right);//左树和右树链接起来。process(root1.right,root2.left);}

递归方法二(效率更高)

思路:
我们在递归的过程中,把层级结构也进行递归,每次把层级结构和左树的右节点放进map 中,在遍历到右树时,根据层级来判断,拿到左树,然后把它们相连,就完成了递归。和上面相比,少了一次递归。效率会增加很多.代码演示。

class Solution {HashMap<Integer,Node>map = new HashMap();public Node connect(Node root) {if(root == null){return root;}process(root,0);return root;}public void process(Node root,int level){if(root == null || root.left == null){return;}root.left.next = root.right;v6(root.left,level + 1);v6(root.right,level + 1);if(map.get(level) != null){Node cur = map.get(level);cur.next = root.left;}map.put(level,root.right);}}

二叉树专题

从前序与中序遍历序列构造二叉树(java)

leetcode二叉树中的最大路径和(java)

二叉树的递归–判断二叉树是否是满二叉树(java实现)

http://www.yayakq.cn/news/198979/

相关文章:

  • ps做网站对齐技巧公司网站建设费用如何做账
  • 网站开发与建设主要干什么wordpress编辑插件
  • 青岛网站制作多少钱一个怎样将建设银行网站加入可信站
  • 专业的论坛网站建设做网站用笔记本做服务器吗
  • 不同代码做的网站后期维护情况河南视频网站建设公司
  • 微页制作网站模板下载江门网站建设方案报价
  • 承包网站开发深圳公关公司
  • 海口seo外包南宁seo网络推广
  • 自家电脑做网站服务器w7花生壳厦门旅游必去十大景点
  • 网站建设的主要功能及定位手机优化专家下载
  • 自己做购物网站推广可做推广的网站
  • 网站开发语言总结有哪些网站建设付款分期付款协议
  • 源码下载网站源码太原做app网站建设
  • 清河网站建设电话网店运营实务
  • 网页设计精选网站值得信赖的深圳app开发公司
  • 网站开发者yotoon网站怎么做谷歌权重
  • 做爰全过程免费的视频凤凰网站wordpress 分类名称
  • 做期货与做网站的关系网站建设免责声明
  • 公司网站简历刷新怎么做wordpress被禁
  • 做网站推销话术网站评估怎么做
  • 校园失物招领网站建设北京西站停车场收费标准
  • 网站服务器的维护方法网站建设职能绩效目标
  • 网站建设模块培训ppt默认网站建立
  • 做网站后台怎么搭建网站界面要求
  • 网站建设活动计划示范高职建设网站
  • 课程网站建设发展趋势做设计兼职的网站有哪些工作内容
  • 国际域名查询网站网站按天扣费优化推广
  • 怎么做网站在线玩游戏seo高端培训
  • 网站制作新手教程美橙网站建设学习教程
  • 注册网站会员有风险吗wordpress图片批量修改