news 2026/2/14 4:17:03

A.每日一题——94. 二叉树的中序遍历

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
A.每日一题——94. 二叉树的中序遍历

题目链接:94. 二叉树的中序遍历(简单)

算法原理:

解法一:递归

0ms击败100.00%

时间复杂度O(N)

思路很简单,就是按照“左根右”的顺序递归即可

下面这篇博客有详细解析👇目录位置:二叉树→二叉树的遍历→中序遍历(递归写法)

Java数据结构——7.二叉树《干货笔记》

解法二:栈

1ms击败21.93%

时间复杂度O(N)

就是再前序遍历回溯到根节点时再顺便存一下

解法一的博客里也有详细解析,目录位置:OJ面试题→二叉树中序非递归遍历

Java代码:

/** * 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 { //解法一:递归 List<Integer> ret; public List<Integer> inorderTraversal(TreeNode root) { ret=new LinkedList<>(); dfs(root); return ret; } private void dfs(TreeNode node){ if(node==null) return; dfs(node.left); ret.add(node.val); dfs(node.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 { //解法二:栈 List<Integer> ret; public List<Integer> inorderTraversal(TreeNode root) { ret=new LinkedList<>(); dfs(root); return ret; } private void dfs(TreeNode node){ if(node==null) return; Stack<TreeNode> stack=new Stack<>(); TreeNode cur=node; while(cur!=null||!stack.isEmpty()){ while(cur!=null){ stack.push(cur); cur=cur.left; } TreeNode top=stack.pop(); ret.add(top.val); cur=top.right; } } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/13 12:38:23

【ROS/ROS2与实时Linux系列】第六篇 `cyclictest`:实时性指标量化与分析

一、简介&#xff1a;为什么实时性指标量化至关重要&#xff1f;在 ROS/ROS2 应用中&#xff0c;实时性是确保系统稳定运行的关键因素。例如&#xff0c;在机器人导航、自动驾驶和工业自动化控制中&#xff0c;系统需要在极短时间内对传感器数据进行处理并做出决策。实时性指标…

作者头像 李华
网站建设 2026/2/11 10:58:07

ResNet十年演进

ResNet&#xff08;残差网络&#xff09; 的十年&#xff08;2015–2025&#xff09;&#xff0c;是从“解决深度神经网络训练难题”的学术突破&#xff0c;向“深度学习工业标准基座”&#xff0c;再到“通过 ConvNeXt 架构反击 Transformer”并最终实现“内核级实时视觉调度”…

作者头像 李华