#include<iostream.h>
#include<malloc.h>
#include<conio.h>
#define Nil NULL
struct nod {
struct nod * left;
char data;
struct nod * right; };
typedef struct nod NOD;
typedef NOD POKOK;
NOD * Nodbaru(char item){
NOD *n;
n=(NOD *)malloc(sizeof(NOD));
if (n!=Nil) {
n->data=item;
n->left=Nil;
n->right=Nil;}
return n; }
void BinaPokok (POKOK **T){
*T=Nil;}
typedef enum {FALSE = 0, TRUE = 1} BOLL;
BOLL pokokKosong (POKOK *T) {
return ((BOLL)(T==Nil)); }
void TambahNod(NOD **p,char item){
NOD *n;
n = Nodbaru(item);
*p =n;}
void preOrder (POKOK *T) {
if (!pokokKosong(T)) {
cout<<" " << T->data;
preOrder(T->left);
preOrder(T->right); }}
void postOrder(POKOK *T) {
if (!pokokKosong (T)) {
postOrder(T->left);
postOrder(T->right);
cout<<" " << T->data; } }
void inOrder(POKOK *T){
if (!pokokKosong(T)){
inOrder(T->left);
cout<<" " << T->data;
inOrder(T->right); }}
int main (){
POKOK *kelapa;
char buah;
BinaPokok(&kelapa);
TambahNod(&kelapa, buah = 'A');
TambahNod(&kelapa->left, buah = 'B');
TambahNod(&kelapa->left->left, buah = 'D');
TambahNod(&kelapa->left->left->right, buah = 'G');
TambahNod(&kelapa->right, buah = 'C');
TambahNod(&kelapa->right->right, buah = 'F');
TambahNod(&kelapa->right->left, buah = 'E');
cout<<" preOrder:";
preOrder(kelapa);
cout<<endl;
cout<<" inOrder:";
inOrder(kelapa);
cout<<endl;
cout<<" postOrder:";
postOrder(kelapa);
cout<<endl;
cout<<endl;
getch();
return 0;
}
#include<malloc.h>
#include<conio.h>
#define Nil NULL
struct nod {
struct nod * left;
char data;
struct nod * right; };
typedef struct nod NOD;
typedef NOD POKOK;
NOD * Nodbaru(char item){
NOD *n;
n=(NOD *)malloc(sizeof(NOD));
if (n!=Nil) {
n->data=item;
n->left=Nil;
n->right=Nil;}
return n; }
void BinaPokok (POKOK **T){
*T=Nil;}
typedef enum {FALSE = 0, TRUE = 1} BOLL;
BOLL pokokKosong (POKOK *T) {
return ((BOLL)(T==Nil)); }
void TambahNod(NOD **p,char item){
NOD *n;
n = Nodbaru(item);
*p =n;}
void preOrder (POKOK *T) {
if (!pokokKosong(T)) {
cout<<" " << T->data;
preOrder(T->left);
preOrder(T->right); }}
void postOrder(POKOK *T) {
if (!pokokKosong (T)) {
postOrder(T->left);
postOrder(T->right);
cout<<" " << T->data; } }
void inOrder(POKOK *T){
if (!pokokKosong(T)){
inOrder(T->left);
cout<<" " << T->data;
inOrder(T->right); }}
int main (){
POKOK *kelapa;
char buah;
BinaPokok(&kelapa);
TambahNod(&kelapa, buah = 'A');
TambahNod(&kelapa->left, buah = 'B');
TambahNod(&kelapa->left->left, buah = 'D');
TambahNod(&kelapa->left->left->right, buah = 'G');
TambahNod(&kelapa->right, buah = 'C');
TambahNod(&kelapa->right->right, buah = 'F');
TambahNod(&kelapa->right->left, buah = 'E');
cout<<" preOrder:";
preOrder(kelapa);
cout<<endl;
cout<<" inOrder:";
inOrder(kelapa);
cout<<endl;
cout<<" postOrder:";
postOrder(kelapa);
cout<<endl;
cout<<endl;
getch();
return 0;
}
Artikel Terkait:

0 komentar:
Posting Komentar