// 15
// 4 20
//1 16 25
#include<stdio.h>
#include<stdlib.h>
#include<memory.h>
typedef struct TreeNode {
int data;
struct TreeNode *left, *right;
} TreeNode;
TreeNode n1 = {1, NULL, NULL};
TreeNode n2 = {4, &n1, NULL};
TreeNode n3 = {16, NULL, NULL};
TreeNode n4 = {25, NULL, NULL};
TreeNode n5 = {20, &n3, &n4};
TreeNode n6 = {15, &n2, &n5};
TreeNode *root = &n6;
void inorder(TreeNode *root) {
if (root) {
inorder(root->left);
printf("%3d", root->data);
inorder(root->right);
}
}
void preorder(TreeNode *root) {
if (root) {
printf("%3d", root->data);
preorder(root->left);
preorder(root->right);
}
}
void postorder(TreeNode *root) {
if (root) {
postorder(root->left);
postorder(root->right);
printf("%3d", root->data);
}
}
int main() {
inorder(root);
printf("\n");
preorder(root);
printf("\n");
postorder(root);
printf("\n");
return 0;
}
/*
1 4 15 16 20 25
15 4 1 20 16 25
1 4 16 25 20 15
--------------------------------
Process exited after 0.01529 seconds with return value 0
계속하려면 아무 키나 누르십시오 . . .
*/
'자료구조' 카테고리의 다른 글
연결리스트 깊이 탐색 (0) | 2019.08.16 |
---|---|
그래프 p.93 (0) | 2019.08.12 |
변수 값 교환 함수 (0) | 2019.05.21 |
포인터 제 1 법칙 (law1.c) (0) | 2019.05.20 |
포인터 실습 2 toOne.c (0) | 2019.05.20 |
댓글