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

教育平台oss做视频网站一二三四视频社区

教育平台oss做视频网站,一二三四视频社区,简洁的企业网站源码,做网站去哪里投放广告leetcode 116. 填充每个节点的下一个右侧节点指针 题目 给定一个 完美二叉树 ,其所有叶子节点都在同一层,每个父节点都有两个子节点。二叉树定义如下: struct Node { int val; Node *left; Node *right; Node *next; } 填充它的每个 next …

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

题目

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

struct Node {
int val;
Node *left;
Node *right;
Node *next;
}
填充它的每个 next 指针,让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点,则将 next 指针设置为 NULL。

初始状态下,所有 next 指针都被设置为 NULL。
在这里插入图片描述

思路

这道题假设用层序遍历开一个队列来做其实非常的简单,但是他既然说了进阶要不开额外空间,这一点就值得考量了。实际上就是怎样才能去掉这个队列呢,那就必然得拿到下一个节点,这个可以借助父节点的next来做,因为遍历到下一层的时候,父节点的next是已知的。所以就一目了然了,这道题除了迭代外,还可以用递归。

代码

// 迭代
/*
// Definition for a Node.
class Node {public int val;public Node left;public Node right;public Node next;public Node() {}public Node(int _val) {val = _val;}public Node(int _val, Node _left, Node _right, Node _next) {val = _val;left = _left;right = _right;next = _next;}
};
*/class Solution {public Node connect(Node root) {if (root == null) {return root;}// Deque<Node> queue = new ArrayDeque<Node>();// queue.offerLast(root);Node node = root;while (node.left != null) {Node firstnode = node;while (node != null) {if (node.left != null) {node.left.next = node.right;}if (node.next != null) {node.right.next = node.next.left;}node = node.next;}node = firstnode.left;}return root;}
}
// 递归
/*
// Definition for a Node.
class Node {public int val;public Node left;public Node right;public Node next;public Node() {}public Node(int _val) {val = _val;}public Node(int _val, Node _left, Node _right, Node _next) {val = _val;left = _left;right = _right;next = _next;}
};
*/class Solution {public Node connect(Node root) {if (root == null) {return null;}if (root.left != null) {root.left.next = root.right;root.right.next = root.next == null ? null : root.next.left;connect(root.left);connect(root.right);}return root;}
}
http://www.yayakq.cn/news/504850/

相关文章:

  • 上海 网站制作网页前端开发用什么软件
  • 网站范例佛山app开发公司排名
  • 网站建设公司合肥云主机安装网站
  • 正规的网站制作服务电话建筑工程网是什么网站
  • 做红酒的网站有哪些郑州网站建设公司有哪些
  • 做跨境电商有没推荐的网站百度网站的域名地址
  • 哪个网站可以找设计师做设计师交易所开发深圳网站制作
  • 建站为应用技术济南环保行业网站开发
  • 网站做app开发小程序制作难吗
  • 风格 特别的网站php 数据库转wordpress
  • 雨花台网站建设图书馆建设网站需要哪些费用
  • 电子商务网站建设与管理学习心得笑傲网站建设
  • 网站有二维码吗优化网站界面的工具
  • 广州手机网站建设费用上海网站设计专注乐云seo
  • 网站统计分析工具的主要功能阿里企业邮箱电话
  • 政务网站安全建设工作计划沈阳做网站需要多少钱
  • 医药电商网站建设什么是电子商务专业?
  • 盱眙网站建设网络营销seo招聘
  • 网站建设费算费用还是固定资产国外做旅游攻略的网站
  • 网站的分享按键文化企业网站模板
  • 枣庄手机网站建设公司网络工程专业毕业设计论文
  • 免费建网站最新视频教程网站运营难做嘛
  • 网站主机的类型福州专业建站
  • 自建网站公司网络营销的优势有哪些?
  • 电商网站开发定制长沙seo运营
  • 做网站做手机站还是自适应站给网站人做网站
  • 商业网站网站建设网站开发账务处理
  • 自己做代练网站自己做网站可行吗
  • 企业建站域名无锡网络优化推广公司
  • 网站外链优化方法网页设计实验报告模板