Rabu, 30 Mei 2018

Contoh Program Binary Tree Menampilkan Silsilah Keluarga ( Family Tree )


Kali ini saya akan membagikan Program Binary Tree Untuk menampilkan Data keluarga. Perlu diketahui sebelumnya binary tree adalah Struktur data yang secara bentuk menyerupai sebuah struktur pohon, dan terdiri dari serangkaian node (simpul) yang saling berhubungan, dimana node-node tersebut dihubungkan oleh sebuah vektor. Struktur pohon merupakan suatu cara merepresentasikan suatu hirarki (one-to-many) secara grafis yang mirip sebuah pohon, namun pohon tersebut tampak sebagai kumpulan node-node dari atas ke bawah. Suatu struktur data yang tidak linier yang menggambarkan hubungan yang hirarkis dan tidak linier antara elemen-elemennya. Oke contoh programnya bisa anda lihat dibawah.


  • SOURCE CODE

#include<stdio.h>
#include <iostream>
#include <windows.h>
using namespace std;
typedef struct node{
char data;
node *kiri;
node *kanan;
};
node *akar=NULL;
addNode(node **akar, char isi) {
if((*akar)==NULL){
node *baru;
baru= new node;
baru->data = isi;
baru->kiri = NULL;
baru->kanan = NULL;
(*akar)=baru;
}
}
preOrder(node *akar) {
if(akar !=NULL) {
printf("%c ", akar->data);
preOrder(akar->kiri);
preOrder(akar->kanan);
}
}
inOrder(node *akar) {
if(akar !=NULL) {
inOrder(akar->kiri);
printf("%c ", akar->data);
inOrder(akar->kanan);
}
}
postOrder(node *akar) {
if(akar !=NULL) {
postOrder(akar->kiri);
postOrder(akar->kanan);
printf("%c ", akar->data);
}
}
main(){
    system("color 2e");
char abjad;
cout<<"|+++++++++++++++++++++++++++++++++++++++++++++++++|\n";
cout<<"|PROGRAM BINARY TREE MENAMPILKAN SILSILAH KELUARGA|\n";
cout<<"|=================================================|\n";
cout<<"\n\n";
cout<<"|----------------------------------------------------|\n";
cout<<"|Keterangan Program : |\n";
cout<<"| NAMA KODE |\n";
cout<<"|----------------------------------------------------|\n";
cout<<"| HASIRAMA | A |\n";
cout<<"| LUFFY | Y |\n";
cout<<"| ROBIN | N |\n";
cout<<"| SANJI | I |\n";
cout<<"| NARUTO | O |\n";
cout<<"| SASUKE | E |\n";
cout<<"|====================================================|\n";
printf("\n\n\t POSISI AWAL TREE:\n\n");
printf("\t HASIRAMA\n\t / \\\n\t LUFFY ROBIN \n\t /\n\t SANJI\n\t / \\ \n\t NARUTO SASUKE \n\n");
addNode(&akar,abjad='HASIRAMA');
addNode(&akar->kiri,abjad='LUFFY');
addNode(&akar->kanan,abjad='ROBIN');
addNode(&akar->kiri->kiri,abjad='SANJI');
addNode(&akar->kiri->kiri->kiri,abjad='NARUTO');
addNode(&akar->kiri->kiri->kanan,abjad='SASUKE');
printf("Tampilan PreOrder : ");
preOrder(akar);
printf("\nTampilan PostOrder : ");
postOrder(akar);
printf("\nTampilan InOrder : ");
inOrder(akar);
}
  • OUTPUT PROGRAM

Pada gambar diatas merupakan contoh binary tree untuk menampilkan silsilah keluarga. Di dalam program diatas juga terdapat fungsi untuk menampilkan kode dari nama keluarga tersebut secara preorder, postorder, dan inorder.


referensi program
https://informatika11d.wordpress.com/2012/12/20/struktur-data-contoh-program-binary-tree-preorder-inorder-postorder/
Load disqus comments

0 komentar