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

做的视频传到哪个网站好青春网站建设工作室

做的视频传到哪个网站好,青春网站建设工作室,正规网站有哪些,网站设计需求表提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、力扣226. 翻转二叉树二、力扣116. 填充每个节点的下一个右侧节点指针三、力扣114. 二叉树展开为链表 二叉树解题的思维模式分两类: 1、是否可以…

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、力扣226. 翻转二叉树
  • 二、力扣116. 填充每个节点的下一个右侧节点指针
  • 三、力扣114. 二叉树展开为链表


二叉树解题的思维模式分两类: 1、是否可以通过遍历一遍二叉树得到答案?如果可以,用一个 traverse 函数配合外部变量来实现,这叫「遍历」的思维模式。 2、是否可以定义一个递归函数,通过子问题(子树)的答案推导出原问题的答案?如果可以,写出这个递归函数的定义,并充分利用这个函数的返回值,这叫「分解问题」的思维模式。 无论使用哪种思维模式,你都需要思考: 如果单独抽出一个二叉树节点,它需要做什么事情?需要在什么时候(前/中/后序位置)做?其他的节点不用你操心,递归函数会帮你在所有节点上执行相同的操作。

前言


一、力扣226. 翻转二叉树

遍历思想

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public TreeNode invertTree(TreeNode root) {treaverse(root);return root;}public void treaverse(TreeNode root){if(root == null){return;}TreeNode l = root.left;root.left = root.right;root.right = l;treaverse(root.left);treaverse(root.right);}
}

分解思想

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public TreeNode invertTree(TreeNode root) {return fun(root);}public TreeNode fun(TreeNode root){if(root == null){return null;}TreeNode lchild = fun(root.left);TreeNode rchild = fun(root.right);root.left = rchild;root.right = lchild;return root;}
}

二、力扣116. 填充每个节点的下一个右侧节点指针

/*
// 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;}if(root.left != null && root.right != null){fun(root.left, root.right);}return root;}public void fun(Node node1, Node node2){if(node1 == null || node2 == null){return ;}node1.next = node2;fun(node1.left, node1.right);fun(node2.left,node2.right);fun(node1.right,node2.left);}
}

三、力扣114. 二叉树展开为链表

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public void flatten(TreeNode root) {fun(root);}public TreeNode fun(TreeNode root){if(root == null){return null;}TreeNode r1 = fun(root.left);TreeNode r2 = fun(root.right);if(r1 != null && r2 != null){r1.right = root.right;root.right = root.left;root.left = null;return r2;}if(r1 == null && r2 != null){return r2;}if(r2 == null && r1 != null){root.right = root.left;root.left = null;return r1;}return root;}
}

第二种解法

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {public void flatten(TreeNode root) {if(root == null){return;}TreeNode r1 = root.left;TreeNode r2 = root.right;flatten(root.left);flatten(root.right);root.left = null;root.right = r1;TreeNode p = root;while(p.right != null){p = p.right;}p.right = r2;}
}
http://www.yayakq.cn/news/947923/

相关文章:

  • 湖北 商城网站建设多少钱沈阳网站建设21anshan
  • 酒店家具网站源码网站班级文化建设
  • 中企动力做网站一次性付款成都定制公交app
  • 生产建设网站基坑开挖深度建站系统推荐
  • 网站页面分析范文网站建设运维策划
  • 网站开发基于什么平台网络营销策划书的主要内容
  • 无锡市住房与城乡建设网站把插钉机子拍下怎么做网站
  • 辽宁省建设厅网站网站变黑白代码
  • 网站优化注意事项百度下载免费安装最新版
  • 做母婴的网站物联网服务平台
  • Net网站开发招聘贵阳百度推广电话
  • 温县网站建设wordpress会员查看
  • 网站开发项目个人总结wordpress 5编辑器使用教程
  • 做网站客户iis编辑网站绑定
  • 做暧暧国外网站网站能不能自己做
  • 熵网站网络程序设计学什么
  • 网站手机版怎么制作2022年seo还值得做吗
  • 爱奇艺做视频网站的前端开发语言有哪些
  • 内蒙古住房与建设厅网站有一个网站专门做民宿
  • 公司做网站的费用怎么做账定制一个企业网站多少钱
  • 中国做水产的有什么网站集团公司网站推广方案怎么做
  • 电商网站建设那家好南宁网站建设推广优化
  • 榆林市城乡建设规划局网站张家界seo优化方案
  • 清风网站建设重庆市建设工程信息网官网安全监督管理平台
  • 创造网站需要多少钱app下载汅api免费下载大全视频
  • 做菠菜网站有没有被骗的怎么查询公司是不是中小企业
  • 网站的制作视频拼多多免费推广软件
  • 郑州新闻发布会无锡百度搜索排名优化
  • 网站开发师是做什么的建设微网站的特色
  • 公益网站 html 模板深圳市南山区网站建设