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

贵州网站建设公司有哪些企业在建设银行网站怎么发工资

贵州网站建设公司有哪些,企业在建设银行网站怎么发工资,全国知名网站建设公司,专业网站建设网站设计二叉树的中序遍历 给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。 示例 1: 输入:root [1,null,2,3] 输出:[1,3,2] 解题思路 中序遍历是一种二叉树遍历方式,按照“左根右”的顺序遍历二叉树节点。 1、递归…

二叉树的中序遍历

给定一个二叉树的根节点 root ,返回 它的 中序 遍历 。

示例 1:

在这里插入图片描述
输入:root = [1,null,2,3]
输出:[1,3,2]

解题思路

中序遍历是一种二叉树遍历方式,按照“左根右”的顺序遍历二叉树节点。

  • 1、递归地遍历左子树。
  • 2、访问当前节点。
  • 3、递归地遍历右子树。

对应先序遍历 根左右
对应后序遍历 左右根

先、中、后序遍历其实指的是遍历根节点先后顺序

Java实现中序遍历

public class InorderTraversal {static class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int val) {this.val = val;}}public List<Integer> inorderTraversal(TreeNode root) {List<Integer> result = new ArrayList<>();inorderTraversalHelper(root, result);return result;}private void inorderTraversalHelper(TreeNode node, List<Integer> result) {if (node == null) {return;}inorderTraversalHelper(node.left, result);result.add(node.val);inorderTraversalHelper(node.right, result);}public static void main(String[] args) {// 示例用法TreeNode root = new TreeNode(1);root.left = new TreeNode(4);root.right = new TreeNode(2);root.right.left = new TreeNode(3);InorderTraversal solution = new InorderTraversal();List<Integer> result = solution.inorderTraversal(root);System.out.println(result);  // 输出:[4, 1, 3, 2]}
}

Java实现先序遍历

/*** 先序遍历* 根->左->右*/
public class PreorderTraversal {static class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int val) {this.val = val;}}public List<Integer> preorderTraversal(TreeNode root) {List<Integer> result = new ArrayList<>();preorderTraversalHelper(root, result);return result;}private void preorderTraversalHelper(TreeNode node, List<Integer> result) {if (node == null) {return;}result.add(node.val);preorderTraversalHelper(node.left,result);preorderTraversalHelper(node.right,result);}public static void main(String[] args) {// 示例用法TreeNode root = new TreeNode(1);root.left = new TreeNode(4);root.left.left = new TreeNode(5);root.left.left.right = new TreeNode(8);root.left.right = new TreeNode(6);root.right = new TreeNode(2);root.right.left = new TreeNode(3);PreorderTraversal solution = new PreorderTraversal();List<Integer> result = solution.preorderTraversal(root);System.out.println(result);  // 输出:[1, 3, 2]}
}

Java实现后序遍历

/*** 后序遍历* 左->右->根*/
public class PostorderTraversal {static class TreeNode {int val;TreeNode left;TreeNode right;TreeNode(int val) {this.val = val;}}public List<Integer> postorderTraversal(TreeNode root) {List<Integer> result = new ArrayList<>();postorderTraversalHelper(root, result);return result;}private void postorderTraversalHelper(TreeNode node, List<Integer> result) {if (node == null) {return;}postorderTraversalHelper(node.left, result);postorderTraversalHelper(node.right, result);result.add(node.val);}public static void main(String[] args) {// 示例用法TreeNode root = new TreeNode(1);root.left = new TreeNode(4);root.right = new TreeNode(2);root.right.left = new TreeNode(3);PostorderTraversal solution = new PostorderTraversal();List<Integer> result = solution.postorderTraversal(root);System.out.println(result);  // 输出:[1, 3, 2]}
}

时间空间复杂度

  • 时间复杂度:O(n),其中n是二叉树中的节点数,每个节点都需要访问一次。
  • 空间复杂度:O(n),取决于递归调用栈的深度,最坏情况下为O(n)。
http://www.yayakq.cn/news/235108/

相关文章:

  • 重庆网站空间建设工程合同备案是在网站上吗
  • 网站发展中国建筑官网电话
  • 大学城网站开发公司电话石家庄市里的网站公司
  • 网站建设卖点汕头app开发
  • 网站设计与制作用什么软件p2p金融网站开发
  • 电子商务网站开发背景及意义北京 工业网站建设公司排名
  • 做商业网站去哪里弄好乐清网站制作公司
  • 现在做微信开发网站多少钱试看30秒做受小视频网站
  • 免费行情软件app网站下载大全肇庆百度快照优化
  • 北京网站优化诊断企业网站建设方案投标书
  • 怎么轻松搭建自己的网站招聘网站分析报告怎么做
  • 怎样推广网站图片拼接做网站背景
  • 网站支付功能报价南京百度网站推广
  • 那种广告式网站怎么做东莞市研发网站建设品牌
  • 做网站外链wordpress 子分类
  • 摄影网站介绍网站建设项目策划书格式
  • 网站开发后台软件网站建设服务费的会计处理
  • 培训网站平台怎样做企业网站主页素描模板
  • 青海制作网站的公司wordpress展示备案号
  • 禹城做网站的网站开发类比赛
  • 网站建设有哪些种类网站套餐方案
  • 推荐网站建设服务商西安网站外包
  • 织梦做英文网站长沙做彩票网站公司
  • 泰国做网站网站icp备案怎么写
  • 网站鉴赏景区官方网站建设方案
  • 行业排名查询网站网站建设丿选择金手指15
  • 宿迁做网站多少钱wordpress 预定插件
  • 网站建设工作室图片天元建设集团有限公司单位
  • 用html做的网站加背景音乐设计网页英语
  • 广东省网站设计与开发html制作新闻信息展示页面