MODUL VI POHON (TREE)

download MODUL VI POHON (TREE)

If you can't read please download the document

description

MODUL VI POHON (TREE)

Transcript of MODUL VI POHON (TREE)

PRAKTIKUM INTELEGENSI BUATAN

Laboratorium KomputasiProgram Studi Teknik InformatikaFakultas Teknologi IndustriUniversitas Atma Jaya Yogyakarta

Modul 6 : Pohon (Tree) halaman 3 dari 3

MODUL VIPOHON (TREE)

Simpul (node)Sebuah Simpul dapat mengandung sebuah nilai atau suatu kondisi atau menggambarkan sebuah struktur data terpisah atau sebuah bagian pohon itu sendiri. Setiap simpul dalam sebuah pohon memiliki nol atau lebih simpul anak (child nodes), yang berada dibawahnya. Tinggi dari pohon adalah panjang maksimal jalan ke sebuah daun dari simpul tersebut. Tinggi dari akar adalah tinggi dari pohon. Kedalaman dari sebuah simpul adalah panjang jalan ke akarnya dari simpul tersebut.

Akar (Root nodes)Simpul yang paling atas dalam pohon adalah akar (root node). Ini merupakan simpul dimana biasanya merupakan tempat untuk memulai operasi dalam pohon. Setiap simpul dalam sebuah pohon dapat dilihat sebagai akar dari sub pohon yang berakar pada simpul tersebut.

Daun (Leaf nodes) 9, 14, 19, 67 dan 76 adalah daun.Semua simpul yang berada pada tingkat terendah dari pohon dinamakan daun (leaf node). Seringkali, daun merupakan simpul terjauh dari akar.

Sub pohon (Subtrees)Sebuah sub pohon adalah suatu bagian dari pohon yang dapat dilihat sebagai sebuah pohon lain. Simpul apapun dalam pohon P, bersama dengan seluruh simpul dibawahnya, membentuk sebuah sub pohon dari P. a

k

y

m

f

daun

simpul

akar

sub pohon

Struktur PohonStruktur Pohon didefinisikan sebagai suatu tipe komposisi dengan 3 elemen, yaitu subpohon kiri, akar, dan subpohon kanan. Pohon mungkin kosong (nil), atau hanya mempunyai subpohon kiri, atau hanya mempunyai sub pohon kanan.Didefinisikan tipe komposisi untuk pohon sebagai berikut:

dtree = tree(dtree,delemen,dtree) ; nildelemen = symbolBahwa pohon yang didefinisikan dtree adalah bertipe tree yang memiliki tiga elemen yaitu dtree untuk subpohon kiri, delemen yang bertipe symbol untuk simpul atau akar dari pohon tersebut, dan dtree untuk subpohon kanan.Dideklarasikan pada predicates untuk pohon sebagai berikut:

nondeterm pohon(dtree)Contoh pada clauses yang menyatakan bahwa P adalah suatu pohon adalah sebagai berikut:

pohon(nil).pohon(tree(nil,_,nil)).pohon(tree(L,_,R)):-pohon(L),pohon(R).Bahwa suatu pohon mungkin kosong (nil).Mungkin juga suatu pohon tidak memiliki subpohon kiri maupun subpohon kanan.Mungkin juga suatu pohon memiliki subpohon kiri maupun subpohon kanan, sehingga dilakukan pengecekan lagi dengan memanggil rekursif untuk masing-masing subpohon kiri dan subpohon kanan.

contoh (demo): a | +--+--+ | | b c | +---+---+ | | d e Maka untuk membentuk pohon tersebut, penulisannya dalam prolog adalah:domainsdtree = tree(dtree, delemen, dtree) ; nildelemen = symbol

predicatesnondeterm pohon(dtree)

clauses/*pohon (P) benar jika P adalah pohon */pohon(nil).pohon(tree(nil,_,nil)).pohon(tree(L,_,R)) :- pohon(L), pohon(R).

goal...