쵼쥬 2021. 12. 2. 15:51


내 코드

package com.company;

import java.io.*;
import java.util.*;

public class Main {
    static int N;
    static int[][] arr;
    static Map<String, String[]> map = new HashMap<>();

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = null;

        N = Integer.parseInt(br.readLine());

        for (int i = 0; i < N; i++) {
            st = new StringTokenizer(br.readLine());
            map.put(st.nextToken(), new String[]{st.nextToken(), st.nextToken()});
        }

        preOrder("A");
        System.out.println();
        inOrder("A");
        System.out.println();
        postOrder("A");

    }


    static void preOrder(String s) {
        if (s.equals("."))
            return;

        System.out.print(s);
        preOrder(map.get(s)[0]);
        preOrder(map.get(s)[1]);
    }

    static void inOrder(String s) {
        if (s.equals("."))
            return;

        inOrder(map.get(s)[0]);
        System.out.print(s);
        inOrder(map.get(s)[1]);
    }

    static void postOrder(String s) {
        if (s.equals("."))
            return;

        postOrder(map.get(s)[0]);
        postOrder(map.get(s)[1]);
        System.out.print(s);
    }
}