原题
https://leetcode.cn/problems/binary-tree-inorder-traversal/description/
思路
递归
复杂度
时间:O(n)
空间:O(n)
Python代码
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def inorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
ans = []
def inOrder(root):
if not root:
return
inOrder(root.left)
ans.append(root.val)
inOrder(root.right)
inOrder(root)
return ans
Go代码
/**
* Definition for a binary tree node.
* type TreeNode struct {
* Val int
* Left *TreeNode
* Right *TreeNode
* }
*/
func inorderTraversal(root *TreeNode) []int {
var ans []int
var inOrder func(*TreeNode)
inOrder = func(root *TreeNode) {
if root == nil {
return
}
inOrder(root.Left)
ans = append(ans, root.Val)
inOrder(root.Right)
}
inOrder(root)
return ans
}
1万+

被折叠的 条评论
为什么被折叠?



