• Tidak ada hasil yang ditemukan

Algoritma and Struktur Data pdf

N/A
N/A
Protected

Academic year: 2018

Membagikan "Algoritma and Struktur Data pdf"

Copied!
4
0
0

Teks penuh

(1)

Algoritma & Struktur Data Heri Juhari *

-+

a /

c b

d *

e f

Binary Tree

 Tree merupakan salah satu bentuk struktur data tidak linear yang menggambarkan hubungan yang bersifat hierarkis (hubungan one to many) antara elemen-elemen.

 Tree bisa didefinisikan sebagai kumpulan simpul/node dengan elemen khusus yang disebut Root.

 Binary Tree (Pohon Biner) yaitu pohon yang setiap simpul/node-nya paling banyak mempunyai dua buah subpohon.

 Contoh implementasi : untuk membuat pohon silsilah keluarga, ungkapan aritmatika yang setiap operatornya dipasang sebagai simpul pencabangan dan operand-operandnya sebagai subpohon, dll.

 Binary tree dapat diimplementasikan dalam C++ dengan menggunakan double linkedlist.

Ada 3 urutan dasar yang dapat digunakan untuk mengunjungi pohon, yaitu :  PreOrder : cetak isi node yang dikunjungi, kunjungi Left Child, kunjungi

Right Child.

InOrder : kunjungi Left Child, cetak isi node yang dikunjungi, kunjungi Right Child.

PostOrder : kunjungi Left Child, kunjungi Right Child cetak isi node yang dikunjungi.

 Simpul yang berisi informasi yang nilainya lebih besar dari simpul atas (root) akan ditempatkan sebagai cabang kanan, jika lebih kecil dari simpul atas akan ditempatkan sebagai cabang kiri.

Ungkapan Aritmatika

Hasil :

(2)

Algoritma & Struktur Data Heri Juhari Dari hasil di atas dapat disimpulkan bahwa :

 Kunjungan secara PreOrder akan menghasilkan notasi Prefix  Kunjungan secara InOrder akan menghasilkan notasi Infix  Kunjungan secara PostOrder akan menghasilkan notasi Postfix Contoh algoritma :

#include<conio.h> #include<malloc.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 != NULL) {

n->data=item; n->left=NULL; n->right=NULL; }

return n; }

void BinaPokok(POKOK **T) {

*T=NULL; }

bool PokokKosong(POKOK *T) {

return ((bool)(T==NULL)); }

void TambahNod(NOD **p, char item) {

NOD *n;

(3)

Algoritma & Struktur Data Heri Juhari

*p=n; }

void preOrder(POKOK *T) {

if(!PokokKosong(T)) {

cout<<" "<<T->data; preOrder(T->left); preOrder(T->right); }

}

void inOrder(POKOK *T) {

if(!PokokKosong(T)) {

inOrder(T->left); cout<<" "<<T->data; inOrder(T->right); }

}

void postOrder(POKOK *T) {

if(!PokokKosong(T)) {

postOrder(T->left); postOrder(T->right); cout<<" "<<T->data; }

}

//Program utama int main()

{

POKOK *kelapa; char buah;

BinaPokok(&kelapa);

TambahNod(&kelapa, buah='M');

TambahNod(&kelapa->left, buah='E');

TambahNod(&kelapa->left->right, buah='I'); TambahNod(&kelapa->right, buah='L');

TambahNod(&kelapa->right->right, buah='O');

(4)

Algoritma & Struktur Data Heri Juhari

Referensi

Dokumen terkait

Hasil dari perhitungan keempat analisis (Indeks Williamson, Tipologi Klassen, CR, LQ) menunjukan bahwa di Kabupaten Bondowoso tidak terjadi ketimpangan spasial dan

Berdasarkan uraian di atas, dapat ditarik kesimpulan bahwa ciri-ciri orang optimis adalah jarang merasa terkejut, mencari pemecahan sebagian permasalahan, merasa yakin

Dari daftar sidik ragam dapat diketahui bahwa perlakuan ketinggian minyak goreng bekas memberikan pengaruh berbeda tidak nyata terhadap volume minyak yang dibutuhkan dalam

“Profitabilitas untuk mengukur kemampuan perusahaan menghasilkan keuntungan pada tingkat penjualan, aset, dan modal saham yang tertentu.” Dari beberapa pengertian di atas,

Patikan kebo ( Euphorbia hirta L.) merupakan salah satu tanaman yang memiliki aktivitas antibakteri terhadap bakteri Staphylococcus epidermidis , yang merupakan

Sehingga perkembangan penyerapan tenaga kerja pada usaha industri kecil juga turut mengalami fluktuasi perkembangan yang cukup positif,yang mana pada tahun 2012

Ide dalam penelitian ini berawal dari Sistem Informasi Sinode Wilayah GKI (SISWA GKI) yang akan menggunakan banyak platform pada sistem tersebut, seperti web, desktop,

Menurut Pradopo (2005: 271) untuk dapat menangkap makna karya sastra secara keseluruhan, lebih dahulu harap diterangkan gaya bahasa dalam wujud kalimat atau