Isaac Emmanuel
15 Jun 2024•EasyC++ / Python / TypeScript

Binary Tree Inorder Traversal

C++, Python and TypeScript solutions for Binary Tree Inorder Traversal.

The Binary Tree Inorder Traversal solutions are below.

Solution files

Python•binary-tree-inorder-traversal/synced-solution.py
class Solution:
    def inorderTraversal(self, root: Optional[TreeNode]) -> List[int]:
        res = []
        def dfs(node):
            if not node: return
            dfs(node.left); res.append(node.val); dfs(node.right)
        dfs(root)
        return res
C++•binary-tree-inorder-traversal/synced-solution.cpp
class Solution {
public:
    vector<int> inorderTraversal(TreeNode* root) {
        vector<int> res;
        function<void(TreeNode*)> dfs = [&](TreeNode* node) {
            if (!node) return;
            dfs(node->left); res.push_back(node->val); dfs(node->right);
        };
        dfs(root);
        return res;
    }
};
TypeScript•binary-tree-inorder-traversal/synced-solution.ts
function inorderTraversal(root: TreeNode | null): number[] {
    const res: number[] = [];
    const dfs = (node: TreeNode | null) => {
        if (!node) return;
        dfs(node.left); res.push(node.val); dfs(node.right);
    };
    dfs(root);
    return res;
}