Lompat ke konten Lompat ke sidebar Lompat ke footer

Menampilkan node baru TREE (Struktur Data) dengan C/C++

Struktur pada tree (pohon) tidak linear seperti pada struktur linked list, stack, dan queue. Setiap node pada tree mempunyai tingkatan, yaitu orang tua (parent) dan anak (child). Struktur ini sebenarnya merupakan bentuk khusus dari struktur tree yang lebih umum, setiap orang tua hanya memiliki dua anak sehingga disebut pohon biner (binary tree), yaitu anak kiri dan anak kanan. Untuk lebih jelasnya, dibawah ini akan diuraikan istilah-istilah umum dalam tree.
  • Predecessor : node yang berada di atas node tertentu
  • Successor : node yang dibawah node tertentu
  • Ancestor : seluruh node yang terletak sebelum node tertentu dan terletak sesudah pada jalur yang sama
  • Descendant : seluruh node yang terletak sesudah node tertentu dan terletak sesudah pada jalur yang sama
  • Parent : predecessor satu level diatas suatu node
  • Child : successor satu level dibawah suatu node
  • Sibling : node-node yang memiliki parent yang sama dengan suatu node
  • Subtree : bagian dari tree yang berupa suatu node beserta descendantnya dan memiliki semua karakteristik dari tree tersebut
  • Size : banyaknya node dalam suatu tree
  • Height : banyaknya tingkatan/level dalam suatu tree
  • Root : satu-satunya node khusus dalam tree yang tidak mempunyai predecessor
  • Leaf : node-node dalam tree yang tidak memiliki successor
  • Degree : banyaknya child yang dimiliki suatu node

Latihan Soal:
Buatlah program untuk menampilkan node baru ke dalam pohon dengan menggunakan prosedur preorder, inorder, dan postorder.
Sehingga akan didapatkan hasil :
Tampilan secara PreOrder : R A S I T E
Tampilan secara InOrder : I S T A R E
Tampilan secara PostOrder : I T S A E R

Script Progam Menampilkan node baru TREE/pohon dengan menggunakan prosedur preorder, inorder, dan postorder C/C++
#include<stdio.h>
typedef struct node
{
char s152;
node *kiri;
node *kanan;
};
node *root=NULL;
void Tambahpang(node **root, char u152)
{
if((*root)==NULL){
node *baru;
baru= new node;
baru->s152 = u152;
baru->kiri = NULL;
baru->kanan = NULL;
(*root)=baru; }
}
void preorder(node *root)
{
if(root !=NULL) {
printf("%c, ", root->s152);
preorder(root->kiri);
preorder(root->kanan); }
}
void inorder(node *root)
{
if(root !=NULL) {
inorder(root->kiri);
printf("%c, ", root->s152);
inorder(root->kanan); }
}
void postorder(node *root)
{
if(root !=NULL) {
postorder(root->kiri);
postorder(root->kanan);
printf("%c, ", root->s152); }
}
main()
{
char g152;
printf("\t *iswanto - 1412110152*\n");
printf("###################################################\n");
Tambahpang(&root,g152='R');
Tambahpang(&root->kiri,g152='A');
Tambahpang(&root->kiri->kiri,g152='S');
Tambahpang(&root->kiri->kiri->kiri,g152='I');
Tambahpang(&root->kiri->kiri->kanan,g152='T');
Tambahpang(&root->kanan,g152='E');
printf("Tampilan secara PreOrder : ");
preorder(root);
printf("\nTampilan secara InOrder : ");
inorder(root);
printf("\nTampilan secara PostOrder : ");
postorder(root);
printf("\n###################################################\n");
}
Output Progam Menampilkan node baru TREE/pohon dengan menggunakan prosedur preorder, inorder, dan postorder C/C++
 Setiap node pada tree mempunyai tingkatan Menampilkan node baru TREE (Struktur Data) dengan C/C++

Posting Komentar untuk "Menampilkan node baru TREE (Struktur Data) dengan C/C++"