LeetCode 94
https://leetcode.cn/problems/binary-tree-inorder-traversal/description/
难度:简单
二叉树中序遍历的递归实现。
时间复杂度:O(n),其中 n 为二叉树节点的个数。二叉树的遍历中每个节点会被访问一次且只会被访问一次。
空间复杂度:O(n)。空间复杂度取决于递归的栈深度,而栈深度在二叉树为一条链的情况下会达到 O(n) 的级别。
class Solution {
public:
vector<int> inorderTraversal(TreeNode* root) {
vector<int> ans;
auto dfs = [&](auto &&dfs, TreeNode* node) {
if (node == nullptr) {
return;
}
dfs(dfs, node->left);
ans.push_back(node->val);
dfs(dfs, node->right);
};
dfs(dfs, root);
return ans;
}
};