4. Pohon (Tree) 4.1. Definisi Rekurens Dari Pohon

Slides:



Advertisements
Presentasi serupa
Tree Kumpulan node yang saling terhubung satu sama lain dalam suatu kesatuan yang membentuk layaknya struktur sebuah pohon. Struktur pohon adalah suatu.
Advertisements

STRUKTUR DATA (10) tree manipulation
JULIAN ADINATA PAUL JHONATAN UKEU PUTRI ROMLI MAULANA
Binary Tree Traversal.
Pertemuan 8 STRUKTUR POHON (TREE).
By : Fitroh Amaluddin & Galih Wasis W.
Pertemuan 9 STRUKTUR POHON (TREE) IMAM SIBRO MALISI NIM :
PENCARIAN (SEARCHING)
Kuliah ke-9 Struktur Data Pohon/Tree (Bab 6)
Tree Yuliana S.
Bab IX P O H O N waniwatining.
BAB 9 POHON.
STRUKTUR DATA GRAPH dan DIGRAPH
PART 4 TREE (POHON) Dosen : Ahmad Apandi, ST
Tenia Wahyuningrum, S.Kom. MT
BAB 9 POHON.
STRUKTUR DATA tree manipulation
Tree. Tree (Pohon) Dalam dunia nyata, sebuah pohon memiliki : akar, cabang, daun. Dalam dunia komputer, pohon (tree) memiliki 3 (tiga) bagian tersebut.
POHON / TREE.
Pengantar Struktur Data & TREE
Pohon Seimbang / AVL Tree (Bab 6)
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Menggambar Tree wijanarto.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Defri Kurniawan POHON DAN POHON BINER Defri Kurniawan
4. Linked List (List Linier)
STRUKTUR DATA Chapt 6 : TREE Oleh : Yuli Praptomo PHS, S.Kom.
STRUKTUR POHON ( BINER )
Pohon dan Pohon Biner Anifuddin Azis.
TERAPAN POHON BINER.
PohonBiner Rachmansyah, S.Kom..
Diagram Pohon (Tree Diagram)
Manipulasi Tree.
2. Stack (Tumpukan) 2.1. Definisi
TREE KELOMPOK 7 HUSNATUL WILDA ( ) MISRIANA ( )
POHON.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
STRUKTUR DATA Tree (Struktur Pohon).
Tree (POHON).
Kunjungan Pada Pohon Biner
Stack (Tumpukan).
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
STRUKTUR DATA 2014 M. Bayu Wibisono.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
POHON (TREE) Pertemuan 6.
Manipulasi Tree.
Tree.
Kuliah ke-9 Struktur Data Pohon/Tree (Bab 6)
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
TREE (POHON).
Pohon.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Parts of a Tree.
TUGAS MATEMATIKA DISKRIT KELAS B (POHON) Engelinus Nana ( ) Eka Christy ( ) Engelinus Nana ( ) Eka Christy ( )
Pohon Rinaldi M/IF2120 Matdis.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Penelusuran Binary Tree
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Tree (Pohon).
POHON Pohon (Tree) merupakan graph terhubung tidak berarah dan tidak mengandung circuit. Contoh: (Bukan) (Bukan) (Bukan)
Oleh Shoffin Nahwa Utama, S.Kom
BINARY SEARCH TREE (BST)
IT234 Algoritma dan Struktur Data
Tree.
IT234 Algoritma dan Struktur Data
Rahmady Liyantanto liyantanto.wordpress.com
Pohon Biner.
IT234 Algoritma dan Struktur Data
Kode MK/ Pemrograman Terstruktur 2
Transcript presentasi:

4. Pohon (Tree) 4.1. Definisi Rekurens Dari Pohon Sebuah pohon adalah himpunan terbatas tidak kosong, dengan elemen yang dibedakan sebagai berikut : 1. Sebuah elemen yang dibedakan dari yang lain yang disebut sebagai AKAR (root) dari pohon 2. Elemen yang lain (jika masih ada) dibagi-bagi menjadi beberapa sub himpunan yang disjoint dan masing-masing sub himpunan tersebut adalah pohon yang disebut sebagai sub pohon dari pohon tersebut.

Beberapa Istilah 1. Hutan Hutan adalah sequence (list) dari pohon 2. Simpul (Node) Simpul adalah elemen dari pohon yang memungkinkan akses pada sub pohon dimana simpul tersebut berfungsi sebagai Akar 3. Cabang Cabang adalah hubungan antara Akar dengan sub pohon

4. Ayah Akar dari sebuah pohon adalah Ayah dari sub pohon 5. Anak Anak dari sebuah pohon adalah Sub pohon 6. Saudara Saudara adalah simpul-simpul yang mempunyai Ayah yang sama 7. Daun Daun adalah simpul terminal dari pohon. Semua simpul selain Daun adalah simpul bukan terminal

8. Jalan (Path) Jalan adalah suatu urutan tertentu dari Cabang 9. Derajat Derajat sebuah pohon adalah banyaknya anak dari dari pohon tersebut. Jika sebuah simpul berderajat N disebut pohon N-aire 1 disebut pohon 1-aire/uner 2 disebut pohon 2-aire/biner

10. Tingkat (Level) Level pohon adalah panjangnya jalan dari Akar sampai dengan simpul yang bersangkutan. Panjang dari jalan adalah banyaknya simpul yang dikandung pada jalan tersebut. Akar mempunyai tingkat sama dengan 1. Dua buah simpul disebut sebagai Sepupu jika mempunyai tingkat yang sama dalam sebuah pohon.

11. Kedalaman (Tinggi) Kedalaman (Tinggi) dari pohon adalah nilai maksimum dari tingkat simpul yang ada pada pohon tersebut. Kedalaman adalah panjang maksimum jalan dari Akar menuju ke sebuah daun 12. Lebar Lebar sebuah Pohon adalah maksimum banyaknya simpul yang ada pada suatu Tingkat (Level)

4.2. Struktur Pohon Biner Definisi Sebuah pohon biner (Binary Tree) adalah himpunan terbatas yang : Mungkin kosong atau Terdiri dari sebuah simpul yang disebut sebagai Akar dan dua buah himpunan lain yang disjoint yang merupakan pohon biner yang disebut sebagai Sub Pohon Kiri (Left) dan Sub Pohon Kanan (Right) dari pohon biner tersebut.

Pohon biner merupakan tipe yang sangat penting Pohon biner merupakan tipe yang sangat penting dari struktur data dan banyak dijumpai dalam berbagai terapan. Karakteristik yang dimiliki oleh pohon biner adalah bahwa setiap simpul paling banyak hanya memiliki dua buah anak, dan mungkin tidak punya anak. Istilah-istilah yang digunakan sama dengan istilah pada pohon secara umum.

Notasi Prefiks, Infiks dan Postfiks Notasi Prefiks ditulis dengan cara mengikuti alur sebagai berikut :

2. Notasi Infiks Notasi ini ditulis dengan cara mengikuti alur sebagai berikut :

3. Notasi Posfiks Notasi ini ditulis dengan cara mengikuti alur sebagai berikut :

Rekonstruksi Algoritma {Deklarasi Type} Type Infotype = … {terdefinisi} Type node = record <Info : infotype, Left : address, Right: address > Type BinTree : address {Primitif}

function Akar (P : BinTree) infotype {Mengirimkan nilai Akar pohon biner P} function Left (P : BinTree) infotype {Mengirimkan anak kiri pohon biner P} function Right (P : BinTree) infotype {Mengirimkan anak kanan pohon biner P}

function IsEmpty(P : BinTree)boolean { Test apakah sebuah pohon kosong, mengirimkan True jika kosong dan False jika tidak} procedure MakeTree(input Akar : infotype, L : BinTree, R : BinTree, output P : BinTree) { K. Awal : sembarang K. Akhir : Terbentuk sebuah pohon biner Proses : Menghasilkan sebuah pohon biner dari Akar, L dan R}

{Traversal} Procedur PreOrder(input P : BinTree) {K. AWAL : P terdefinisi K. AKHIR : Semua simpul P sudah diproses secara preorder} Procedure InOrder(input P : BinTree) K. AKHIR : Semua simpul P sudah diproses secara inorder}

Procedure PostOrder(input P : BinTree) {K. AWAL : P terdefinisi K. AKHIR : Semua simpul P sudah diproses secara postorder} Procedure PrintTree(input P : BinTree, h : integer) {K. AWAL : P terdefinisi, h adalah jarak indentasi K. AKHIR : Semua simpul P sudah ditulis dengan indentasi}

{Search} function Search(P : BinTree, X : infotype)boolean {Mengirimkan True jika ada node P bernilai X, false jika tidak} {fungsi lain} function NbElmt(P : BinTree)integer {Mengirimkan banyaknya elemen (node) pohon biner P}

function NbDaun(P : BinTree) integer { Mengirimkan banyaknya daun pohon biner P} function IsUnerLeft(P : BinTree) boolean { Mengirimkan True jika pohon biner tidak kosong P adalah pohon unerleft yaitu hanya mempunyai sub pohon kiri} function IsUnerRight(P : BinTree) boolean { Mengirimkan True jika pohon biner tidak kosong P adalah pohon unerright yaitu hanya mempunyai sub pohon kanan}

function IsBin(P : BinTree)boolean { Mengirimkan True jika pohon biner tidak kosong P adalah pohon biner yaitu mempunyai sub pohon kanan dan sub pohon kiri} function IsSkewLeft(P : BinTree)boolean { Mengirimkan True jika pohon biner P adalah pohon condong kiri} function IsSkewRight(P : BinTree)boolean { Mengirimkan True jika pohon biner P adalah pohon condong kanan}

function Tinggi(P : BinTree)integer { Mengirimkan tinggi dari pohon biner P} function Level(P : BinTree, X : infotype)integer { Mengirimkan level dari node X yang merupakan salah satu simpul dari pohon biner P} {Operasi Lain}

Procedure AddDaunTerkiri(input/output P:BinTree, input X: infotype) {K. AWAL : P boleh kosong K. AKHIR : P bertambah simpulnya, dengan X adalah simpul daun terkiri} Procedure AddDaun(input/output P:BinTree, input X, Y : infotype, input Kiri : boolean) {K. AWAL : P tidak boleh kosong, X adalah salah satu daun pohon Biner P K. AKHIR : P bertambah simpulnya, dengan Y adalah anak kiri X (jika kiri) atau sebagai anak kanan X (jika not kiri)}

Procedure DelDaunTerkiri(input/output P:BinTree, output X: infotype) {K. AWAL : P tidak kosong K. AKHIR: P dihapus daun terkirinya dan didealokasi, dengan X adalah info yang semula disimpan pada daun terkiri yang dihapus} Procedure DelDaun(input/output P:BinTree, output X: infotype) {K. AWAL : P tidak kosong, X adalah salah satu daun K. AKHIR : X dihapus dari P}