90. 구조체 노드로 만든 이진 트리의 세 가지 순회
다음 C 프로그램의 실행 결과를 쓰시오.
1#include <stdio.h>2#include <stdlib.h>34struct Node {5char key;6struct Node *left;7struct Node *right;8};910struct Node *make(char k, struct Node *l, struct Node *r) {11struct Node *n = (struct Node *)malloc(sizeof(struct Node));12n->key = k;13n->left = l;14n->right = r;15return n;16}1718void walk(struct Node *t, int mode) {19if (t == NULL) return;20if (mode == 0) printf("%c", t->key);21walk(t->left, mode);22if (mode == 1) printf("%c", t->key);23walk(t->right, mode);24if (mode == 2) printf("%c", t->key);25}2627void release(struct Node *t) {28if (t == NULL) return;29release(t->left);30release(t->right);31free(t);32}3334int main() {35struct Node *g = make('G', NULL, NULL);36struct Node *d = make('D', NULL, g);37struct Node *p = make('P', NULL, NULL);38struct Node *t = make('T', p, NULL);39struct Node *root = make('M', d, t);40for (int m = 0; m < 3; m++) {41walk(root, m);42printf("\n");43}44release(root);45return 0;46}