Politeknik Elektronika Negeri Surabaya

dokumen-dokumen yang mirip
Silsilah keluarga Hasil pertandingan yang berbentuk turnamen Struktur organisasi dari sebuah perusahaan. B.1 Pohon Biner (Binary Tree)

Binary Tree kosong Gambar 1. Binary Tree dalam kondisi kosong

Tree (Struktur Data) Nisa ul Hafidhoh, MT

B C D E F G H I J K L M N O P Q R S T. Tinaliah, S.Kom POHON BINER

13/12/2013. Binary Tree. Contoh Tree

Pohon dan Pohon Biner

BAB VII Tujuan 7.1 Deskripsi dari Binary Tree

BAB IV POHON. Diktat Algoritma dan Struktur Data 2

IT234 Algoritma dan Struktur Data. Tree

Politeknik Elektronika Negeri Surabaya

KUM 6 IMPLEMENTASI BINARY TREE

6. TREE / BINARY TREE

Tenia Wahyuningrum, S.Kom. MT Sisilia Thya Safitri, S.T.,M.T.

INFIX, POSTFIX, dan PREFIX Bambang Wahyudi

Algoritma dan Struktur Data. Tree

TREE STRUCTURE (Struktur Pohon)

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II

KUNJUNGAN PADA POHON BINER

A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami Konsep Binary Search Tree 2. Mengimplementasaikan Binary Search Tree

SATUAN ACARA PERKULIAHAN (SAP) Mata Kuliah : Struktur Data Kode : TIS3213 Semester : III Waktu : 2 x 3 x 50 Menit Pertemuan : 10 & 11

Soal Pendahuluan Modul 3

Praktikum Algoritma dan Setruktur Data

Algoritma dan Struktur Data. Binary Tree & Binary Search Tree (BST)

B. DASAR TEORI AlGORITMA TRAVERSAL GRAPH Terdapat beberapa perbedaan Tree dan Graph dijelaskan pada tabel Tabel 31.1 Perbedaan Tree dan Graph

Buku Ajar Struktur Data

ALGORITMA DAN STRUKTUR DATA

Silsilah keluarga Hasil pertandingan yang berbentuk turnamen Struktur organisasi dari sebuah perusahaan

Struktur Data & Algoritma

BAB VII POHON BINAR POHON

Pemrograman Algoritma Dan Struktur Data

Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika

STRUKTUR POHON (TREE) Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit.

TREE ALGORITMA & STRUKTUR DATA. Materi ASD Fakultas Teknik Elektro & Komputer UKSW ( Download Dari :

Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013

STRUKTUR POHON (TREE) Pohon atau Tree adalah salah satu bentuk Graph terhubung yang tidak mengandung sirkuit.

Termilogi Pada Pohon Berakar 10 Pohon Berakar Terurut

Pohon Biner (Bagian 1)

Politeknik Elektronika Negeri Surabaya

Definisi. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon

MODUL PRAKTIKUM STRUKTUR DATA

Kode MK/ Pemrograman Terstruktur 2. ZK Abdurahman Baizal. KK Algoritma dan Komputasi. Tree (Pohon)

Konsep Pohon (Tree) Binary Tree Penyajian Tree dengan Array Penyajian Tree dengan Linked List Metode Traversal (Kunjungan Node pada Tree)

Gambar 1. Ilustrasi Stack

POHON CARI BINER (Binary Search Tree)

Pohon. Bahan Kuliah IF2120 Matematika Diskrit. Program Studi Teknik Informatika ITB. Rinaldi M/IF2120 Matdis 1

TUGAS MAKALAH INDIVIDUAL. Mata Kuliah : Matematika Diskrit / IF2153 Nama : Dwitiyo Abhirama NIM :

Algoritma dan Struktur Data. Linear & Binary Search Tree

BAB IX TREE (POHON) ISTILAH DASAR

Pohon (TREE) Matematika Deskrit. Hasanuddin Sirait, MT 1

Matematika Diskret (Pohon) Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

Tree. Perhatikan pula contoh tree di bawah ini : Level. Level 2. Level 3. Level 4. Level 5

KLASIFIKASI BINARY TREE

Koleksi Hirarkis Tree

Definisi. Pohon adalah graf tak-berarah, terhubung, dan tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon (ada sikuit) (tdk terhubung)

Struktur Data Tree/Pohon dalam Bahasa Java

SOAL TUGAS STRUKTUR DATA

Struktur dan Organisasi Data 2 POHON BINAR

Data Structure TREE & BINARY TREE. Chapter 5b. Dahlia Widhyaestoeti, S.Kom

DEFINISI. Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit. pohon pohon bukan pohon bukan pohon 2

Pertemuan 9 STRUKTUR POHON & KUNJUNGAN POHON BINER

STRUKTUR POHON & KUNJUNGAN POHON BINER

BAB 7 POHON BINAR R S U

Praktikum Stack. A. Stack Collection di java.util.collection. Percobaan 1. Percobaan 2. import java.util.iterator; import java.util.

BAB XI Manipulasi Binary Tree

A B C E F G K Contoh Tree

Bab 1 Pengantar Struktur Data

1 Bagian 1: Mencetak isi binary tree

Mata Kuliah : Struktur Data Semester : Genap Kode Mata Kuliah : 307 Waktu : 180 Menit Bobot : 4 sks. Jurusan : MI

BAB 2 LANDASAN TEORI

2. Mahasiswa dapat membuat dan menggunakan array dan linked list dalam suatu kasus.

TREE. Definisi. Istilah-istilah Umum dalam Tree

Implementasi Skema Pohon Biner yang Persistent dalam Pemrograman Fungsional

1. E = a + 2b d + dh f g. Ubah ke dalam notasi postfix: a. Menggunakan Algoritma b. Secara manual c. Dari pohon biner menggunakan Stack

Struktur Data dan Algoritma

Pertemuan 15 REVIEW & QUIS

Modul 4: Iteratif & Rekursif, Binary Tree

Algoritma dan Struktur Data. Click to edit Master subtitle style Konsep Tree

BAB III ANALISA DAN PERANCANGAN

8/29/2014. Kode MK/ Nama MK. Matematika Diskrit 2 8/29/2014

Penerapan DFS dan BFS dalam Pencarian Solusi Game Japanese River IQ Test

Gambar 1. Langkah-langkah pengurutan metode Insertion Sort (1)

FAKULTAS TEKNOLOGI KOMUNIKASI DAN INFORMATIKA UNIVERSITAS NASIONAL

Penerapan Pohon Dalam Heap Sort

Pohon Biner dan Aplikasinya

Lecture Notes On Algorithms and Data Structures. Oleh Thompson Susabda Ngoen

OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF

Pertemuan 9 STRUKTUR POHON (TREE) Sifat utama Pohon Berakar ISTILAH-ISTILAH DASAR

BAB 7 POHON BINAR. Contoh : Pohon berakar T R S U

ALGORITMA PENCARIAN (1)

Syarif Abdullah (G )

POHON BINAR 7.1 POHON. Gambar 7.1. Contoh pohon berakar

A. TUJUAN PEMBELAJARAN 1. Mengenal berbagai macam bentuk operator 2. Memahami penggunaan berbagai macam jenis operator yang ada di Java

Ujian Tengah Semester Struktur Data dan Algoritma Fakultas Ilmu Komputer, Universitas Indonesia 9 November 2006

Aplikasi Algoritma Traversal Dalam Binary Space Partitioning

RENCANA PROGRAM KEGIATAN PERKULIAHAN SEMESTER (RPKPS)

BAB II LANDASAN TEORI

MAKALAH DESAIN DAN ANALISIS ALGORITMA BINARY TREE DISUSUN OLEH : 1. Nadim Achmad ( ) 2. Dzurratul Ulya ( )

Implementasi Struktur Data Rope menggunakan Binary Tree dan Aplikasinya dalam Pengolahan Teks Sangat Panjang

BINARY SEARCH TREE. TUJUAN UMUM Mahasiswa memahami binary search Tree

A. TUJUAN PEMBELAJARAN 1. Memahami konsep dan operasi pada Stack. 2. Mampu mengimplementasikan struktur data Stack pada array dan List.

Transkripsi:

PRAKTIKUM 25 TRAVERSAL BINARY TREE A. TUJUAN Mahasiswa diharapkan mampu : 1. Memahami konsep dari pembacaan Binary Tree dengan traversal Inorder, Preorder dan PostOrder 2. Mengimplementasikan pembacaan Binary Tree dengan traversal Inorder, Preorder dan PostOrder B. DASAR TEORI Struktur pohon (tree) biasanya digunakan untuk menggambarkan hubungan yang bersifat hirarkis antara elemen-elemen yang ada. Contoh penggunaan struktur pohon : Silsilah keluarga Hasil pertandingan yang berbentuk turnamen Struktur organisasi dari sebuah perusahaan Sebuah binary tree adalah sebuah pengorganisasian secara hirarki dari beberapa buah simpul, dimana masing-masing simpul tidak mempunyai anak lebih dari 2. Simpul yang berada di bawah sebuah simpul dinamakan anak dari simpul tersebut. Simpul yang berada di atas sebuah simpul dinamakan induk dari simpul tersebut. Algoritma Binary Tree Traversal Proses traversal adalah proses melakukan kunjungan pada setiap node pada suatu binary tree tepat satu kali. Dengan melakukan kunjungan secara lengkap, maka akan didapatkan urutan informasi secara linier yang tersimpan dalam sebuah binary tree. Terdapat tiga teknik rekursif untuk binary tree traversals,yaitu: 1. Mengunjungi simpul akar (root), 2. Melakukan traversal subpohon kiri (left subtree), dan 3. Melakukan traversal subpohon kanan (right subtree). Yang membedakan antara teknik satu dengan yang lain adalah proses pengurutan tugas mereka. 190

Terdapat tiga cara untuk melakukan kunjungan itu, yaitu: 1. Traversal preorder (depth first order) Dilaksanakan dengan jalan mencetak isi node yang dikunjungi lalu melakukan kunjungan ke subtree kiri dan selanjutnya ke subtree kanan. Algoritma umum traversal preorder adalah sebagai berikut: Jika tree kosong, maka keluar Traverse subtree kiri secara preorder. Traverse subtree kanan secara preorder. 2. Traversal inorder (symmetric order) Dilaksanakan dengan jalan melakukan kunjungan ke subtree kiri, mencetak isi node yang dikunjungi, lalu melakukan kunjungan ke subtree kanan. Algoritma umum traversal inorder adalah sebagai berikut: Jika tree kosong, maka keluar. Traverse subtree kiri secara inorder. Traverse subtree kanan secara inorder. 3. Traversal postorder Dilaksanakan dengan jalan melakukan kunjungan ke subtree kiri, lalu ke subtree kanan, dan selanjutnya mencetak isi node yang dikunjungi. Algoritma umum traversal inorder adalah sebagai berikut: Jika tree kosong, maka keluar. Traverse subtree kiri secara postorder. Traverse subtree kanan secara postorder. Semua algoritma traversal (preorder, inorder, postorder) yang diberikan di atas berupa algoritma rekursif, dan sebenarnya dapat dikerjakan secara iteratif dengan bantuan stack. 191

Contoh: diberikan ekspresi matematika ((A * B) - (C ^ D)) + (E / F), apabila digambarkan dalam bentuk binary tree. Apabila binary tree di atas dikunjungi: secara preorder akan menghasilkan: + - * A B ^ C D / E F secara inorder akan menghasilkan: A * C - C ^ D + E / F secara postorder akan menghasilkan: A B + C D ^ - E F / + C. TUGAS PENDAHULUAN Terdapat Binary Tree yang merepresentasikan sebuah notasi aritmatika a * b + (c d) / e Gambar 1. Binary Tree dengan notasi aritmatika a * b + (c d) / e Buatlah digram rekursif untuk pembacaan Binary Tree menggunakan Traversal PostOrder D. PERCOBAAN Pada percobaan dan latihan ini seperti ditunjukkan pada gambar 2, terdapat Class TNode, Class Binary Tree dan Class Test BinaryTree. Class TNode merepresentasikan sebuah Node pada Binary Tree. Pada Class Binary Tree terdapat method : - preorderdisplay(tnode<t> t) : untuk traversal Tree dengan cara Preorder - inorderdisplay(tnode<t> t) : untuk traversal Tree dengan cara Inorder - postorderdisplay(tnode<t> t) : untuk traversal Tree dengan cara Postorder - buildtreeexample(), buildtree0(),buildtree1(),buildtree2(),buildtree3() : method untuk membangun tree berdasarkan studi kasus. - copytree(tnode<t> t) : untuk mengkopi sebuah Binary Tree - cleartree(tnode<t> t) : untuk menghapus Binary Tree - height(tnode<t> t) : untuk menghitung kedalaman Binary Tree 192

Class Test BinaryTree untuk menguji class Binary Tree yang sudah dibuat. Gambar 2. Class Diagram dari praktikum Binary Tree Percobaan 1 : Pembacaan Binary Tree dengan Traversal Inorder public static <T> String inorderdisplay(tnode<t> t) { s += inorderdisplay(t.left); // descend left s += inorderdisplay(t.right); // descend right Percobaan 2 : Pembacaan Binary Tree dengan Traversal Preorder public static <T> String preorderdisplay(tnode<t> t) { s += preorderdisplay(t.left); // descend left s += preorderdisplay(t.right); // descend right 193

Percobaan 3: Pembacaan Binary Tree dengan Traversal Postorder public static <T> String postorderdisplay(tnode<t> t) { s += postorderdisplay(t.left); // descend left s += postorderdisplay(t.right); // descend right Selanjutnya ujilah method inorderdisplay(tnode<t> t), preorderdisplay(tnode<t> t), postorderdisplay(tnode<t> t). public class TestBinaryTree { public static void main(string[] args) { TNode<Character> root = BinaryTree.buildTree0(); System.out.println("Preorder : " + BinaryTree.preorderDisplay(root)); System.out.println("Inorder : " + BinaryTree.inorderDisplay(root)); System.out.println("Postorder : " + BinaryTree.postorderDisplay(root)); E. LATIHAN Latihan 1 : Untuk studi kasus pada gambar 1, buatlah Binary Tree secara manual. Lakukan pembacaan Binary Tree dengan Traversal Inorder, Preorder dan Postorder. Latihan 2 : Buatlah Binary Tree dari notasi infix berikut. Selanjutnya lakukan pembacaan Binary Tree dengan Traversal Inorder, Preorder dan Postorder. - A + B C + D - (A + B) * (C-D) - A + (B-C) / D * E - A * B - C ^ D + E / F F. LAPORAN RESMI Kerjakan hasil percobaan(d) dan latihan(e) di atas dan tambahkan analisa. 194