본문 바로가기
Coding Test/LeetCode

[LeetCode] 94. Binary Tree Inorder Traversal [JAVA(자바)]

문제 👉 <Binary Tree Inorder Traversal - LeetCode>

1. 문제

이진 트리의 루트가 주어지면 노드 값의 순회 순회를 반환합니다.


Input: root = [1,null,2,3]
Output: [1,3,2]

2. 풀이

Inorder : left -> self -> right

3. 코드

/**
 * 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;

    // Inorder : left -> self -> right
    void traversal(TreeNode node) {
        if (node == null) return;

        // left
        if (node.left != null) {
            traversal(node.left);
        }

        // self
        ret.add(node.val);

        // right
        if (node.right != null) {
            traversal(node.right);
        }

    }

    public List<Integer> inorderTraversal(TreeNode root) {
        ret = new ArrayList<>();

        traversal(root);

        return ret;
    }
}
  • 결과 :
Time Submitted Status Runtime Memory Language
05/03/2021 Accepted 0 ms 36.9 MB java


References


🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다.
잘못된 부분이 있다면 과감하게 지적해주세요!! 🏋

댓글