leecode刷题(29)-- 二叉树的中序遍历
2024-09-03 22:22:14
leecode刷题(29)-- 二叉树的中序遍历
二叉树的中序遍历
给定一个二叉树,返回它的中序 遍历。
示例:
输入: [1,null,2,3]
1
\
2
/
3
输出: [1,3,2]
思路
跟上一道题一样,用递归的思想很快就能解决。
中序遍历:
先处理左子树,然后是根,最后是右子树。
代码如下
Java 描述
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
List<Integer> list = new ArrayList();
public List<Integer> inorderTraversal(TreeNode root) {
if (root != null) {
inorderTraversal(root.left);
list.add(root.val);
inorderTraversal(root.right);
}
return list;
}
}
python 描述
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution:
def inorderTraversal(self, root: TreeNode) -> List[int]:
res = []
if root is not None:
res = res + self.inorderTraversal(root.left)
res = res + [root.val]
res = res + self.inorderTraversal(root.right)
return res
总结
对比如下:
最新文章
- Bootstrap之导航条
- 那些年,我们在Django web开发中踩过的坑(一)——神奇的‘/’与ajax+iframe上传
- oracle 用Navicat创建的表的查询问题
- kaili 2.0 虚拟机修改ip
- JAVA_Reflection1
- angular替代Jquery,常用方法支持
- PHP-FPM进程池探秘
- 关于mysql的loose index scan的几点疑问
- GitHub无法访问或访问缓慢解决办法
- Perl IO:文件锁
- cout关闭输出缓冲,调试用
- Pytorch 入门之Siamese网络
- Ubuntu端口命令---查看端口占用及关闭
- mysql数据库导出CSV乱码问题
- excel中vba将excel中数字和图表输出到word中
- 什么是最小可行性数据产品(MVP)?如何用它做机器学习?
- Python3.7安装Geenlet
- java 反序列化 漏洞
- 让我们来一起学习OC吧
- Hibernate开发环境搭建