코딩테스트/[백준] 코딩테스트 연습
트리 순회
쵼쥬
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);
}
}