728x90
반응형
#include <iostream>
#include <vector>
#include<map>
using namespace std;
map<char, pair<char, char>>tree;
void preorder(char node) {
if (node == '.')return;
cout << node;
preorder(tree[node].first);
preorder(tree[node].second);
}
void inorder(char node) {
if (node == '.')return;
inorder(tree[node].first);
cout << node;
inorder(tree[node].second);
}
void postorder(char node) {
if (node == '.')return;
postorder(tree[node].first);
postorder(tree[node].second);
cout << node;
}
int main()
{
int n;
cin >> n;
char node, left, right;
for (int i = 0; i < n; i++) {
cin >> node >> left >> right;
tree[node] = { left,right };
}
char A = 'A';
//전위 순회
preorder(A); cout << '\n';
//중위 순회
inorder(A); cout << '\n';
//후위 순회
postorder(A);
}
728x90
반응형
'하루 1문제 챌린지 > Silver1' 카테고리의 다른 글
백준 2529번 부등호(C++) 🚩 (0) | 2024.03.01 |
---|---|
백준 1080번 행렬(C++)🚩🚩 (0) | 2024.03.01 |
백준 2841번 외계인의 기타연주(C++) (1) | 2024.02.16 |
백준 15903번 카드합체놀이 (C++) (1) | 2024.02.16 |
백준 16206번 롤케이크(C++)🚩 (0) | 2024.02.13 |