Soal Pendahuluan Modul 3

dokumen-dokumen yang mirip
TREE STRUCTURE (Struktur Pohon)

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

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

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

Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika

13/12/2013. Binary Tree. Contoh Tree

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

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II

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

Pertemuan 9 STRUKTUR POHON & KUNJUNGAN POHON BINER

Struktur Data Tree/Pohon dalam Bahasa Java

JAWABAN TUGAS MATRIKULASI STRUKTUR DATA. DOSEN Bpk. Krisna Adiyarta, M.Sc

IT234 Algoritma dan Struktur Data. Tree

ALGORITMA DAN STRUKTUR DATA

Pohon dan Pohon Biner

Tree (Struktur Data) Nisa ul Hafidhoh, MT

STRUKTUR POHON & KUNJUNGAN POHON BINER

MODUL PRAKTIKUM STRUKTUR DATA

Organisasi Berkas Sekuensial Berindeks

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

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

BAB IV POHON. Diktat Algoritma dan Struktur Data 2

BAB VII Tujuan 7.1 Deskripsi dari Binary Tree

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

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

BAB IX TREE (POHON) ISTILAH DASAR

Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013

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

BAB VII POHON BINAR POHON

Termilogi Pada Pohon Berakar 10 Pohon Berakar Terurut

Politeknik Elektronika Negeri Surabaya

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

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

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

Binary Tree kosong Gambar 1. Binary Tree dalam kondisi kosong

Struktur Data & Algoritma

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

A B C E F G K Contoh Tree

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

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

Algoritma dan Struktur Data. Tree

Politeknik Elektronika Negeri Surabaya

Praktikum Algoritma dan Setruktur Data

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

Implementasi Skema Pohon Biner yang Persistent dalam Pemrograman Fungsional

KUM 6 IMPLEMENTASI BINARY TREE

Pemodelan dan Pengelolaan Data Klasifikasi Tanaman Menggunakan Pohon

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

Pemrograman Algoritma Dan Struktur Data

Syarif Abdullah (G )

Buku Ajar Struktur Data

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

Variasi Pohon Pencarian Biner Seimbang

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS

6. TREE / BINARY TREE

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

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

Pohon Biner (Bagian 1)

METODE AVL TREE UNTUK PENYEIMBANGAN TINGGI BINARY TREE

FAKULTAS TEKNOLOGI KOMUNIKASI DAN INFORMATIKA UNIVERSITAS NASIONAL

Pertemuan 15 REVIEW & QUIS

Koleksi Hirarkis Tree

Algoritma dan Struktur Data. Linear & Binary Search Tree

Struktur Data & Algoritma

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

Penyandian (Encoding) dan Penguraian Sandi (Decoding) Menggunakan Huffman Coding

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

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS

KUNJUNGAN PADA POHON BINER

ANALISIS ALGORITMA BINARY SEARCH

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

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

Penerapan Pohon Biner dalam Proses Pengamanan Peer to Peer

Pohon Biner dan Aplikasinya

Outline. Struktur Data & Algoritme (Data Structures & Algorithms) Pengantar. Definisi. 2-3 Trees

BAB III METODOLOGI PENELITIAN. Penelitian ini dilakukan di Jurusan Ilmu Komputer Fakultas Matematika dan

BINARY SEARCH TREE. TUJUAN UMUM Mahasiswa memahami binary search Tree

TREE. Definisi. Istilah-istilah Umum dalam Tree

Binary Tree. Binary Tree dapat digambarkan berdasarkan kondisinya, sebagai berikut: Pointer ke akar (root) dari tree

OPERASI LOGIKA PADA GENERAL TREE MENGGUNAKAN FUNGSI REKURSIF

Politeknik Elektronika Negeri Surabaya

Struktur Data dan Algoritma

Membuat Binary Search Tree Menggunakan STL Vector C++

Binary Search Tree (BST)

POHON CARI BINER (Binary Search Tree)

TERAPAN POHON BINER 1

METODE POHON BINER HUFFMAN UNTUK KOMPRESI DATA STRING KARAKTER

Binary Tree. Binary Tree dapat digambarkan berdasarkan kondisinya, sebagai berikut: Pointer ke akar (root) dari tree

Aplikasi Pohon Pencarian Biner Seimbang sebagai Memo Table Dynamic Programming

Aplikasi Pohon pada Pohon Binatang (Animal Tree)

IKI 20100: Struktur Data & Algoritma

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

Everybody in this country should learn how to program a computer because it teaches you how to think. Steve Jobs

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

Kompleksitas Algoritma dari Algoritma Pembentukan pohon Huffman Code Sederhana

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

Pemanfaatan Algoritma BFS pada Graf Tak Berbobot untuk Mencari Jalur Terpendek

JURUSAN SISTEM INFORMASI

Penerapan Pohon dengan Algoritma Branch and Bound dalam Menyelesaikan N-Queen Problem

P o h o n. Definisi. Oleh: Panca Mudji Rahardjo. Pohon. Adalah graf tak berarah terhubung yang tidak mengandung sirkuit.

Transkripsi:

1. Apa yang dimaksud dengan tree? PENGERTIAN TREE Kumpulan node yang saling terhubung satu sama lain dalam suatu kesatuan yang membentuk layakya struktur sebuah pohon. Struktur pohon adalah suatu cara merepresentasikan suatu struktur hirarki (one-to-many) secara grafis yang mirip sebuah pohon, walaupun pohon tersebut hanya tampak sebagai kumpulan node-node dari atas ke bawah. Suatu struktur data yang tidak linier yang menggambarkan hubungan yang hirarkis (one-tomany) dan tidak linier antara elemen-elemennya. Suatu tree dengan syarat bahwa tiap node hanya boleh memiliki maksimal dua subtree dan kedua subtree tersebut harus terpisah. Tiap node dalam binary tree hanya boleh memiliki paling banyak duachild. 2. Sebutkan dan jelaskan unsur-unsur pembentuk tree! Jelaskan istilah-istilah dalam tree! UNSUR-UNSUR PEMBENTUK TREE Dalam ilmu komputer, tree adalah sebuah struktur data yang secara bentuk menyerupai sebuah pohon, yang terdiri dari serangkaian node (simpul) yang saling berhubungan. Nodenode tersebut dihubungkan oleh sebuah vektor. Setiap node dapat memiliki 0 atau lebih node anak (child). Sebuah node yang memiliki node anak disebut node induk (parent). Sebuah node anak hanya memiliki satu node induk. Sesuai konvensi ilmu komputer, tree bertumbuh ke bawah, tidak seperti pohon di dunia nyata yang tumbuh ke atas. Dengan demikian node anak akan digambarkan berada di bawah node induknya. Node yang berada di pangkal tree disebut node root (akar), sedangkan node yang berada paling ujung pada piramida tree disebut node leaf (daun). NODE ROOT Node root dalam sebuah tree adalah suatu node yang memiliki hiarki tertinggi dan dapat juga memiliki node-node anak. Semua node dapat ditelusuri dari node root tersebut; Node root adalah node khusus yang tercipta pertama kalinya; Node-node lain di bawah node root saling terhubung satu sama lain dan disebut sub-tree. 1

NODE LEAF Merupakan bagian dari sub-tree; Letakaknya dibawah dari hierarki node root, dapat terletak ditengah atau berada paling bawah sekali. Pohon biner adalah sebuah tree yang pada masing-masing simpulnya hanya dapat memiliki maksimum 2 (dua) simpul anak. Tidak boleh lebih. Pada pohon biner, umumnya kedua node anak disebut dengan posisinya, yaitu kiri dan kanan. ISTILAH DALAM TREE - Size (ukuran): jumlah total node yang terdapat pada pohon biner tersebut. - Depth (kedalaman): panjang jalur yang menghubungkan sebuah node sampai ke node anaknya yang paling ujung (leaf). Depth biasa juga disebut height. 2

Ancestor (F) = C,A Descendant (C) = F,G Parent (D) = B Child (A) = B,C Sibling (F) = G Size = 7 A B C D E F G Height = 3 Root = A Leaf = D,E,F,G Degree (C) = 2 3. Sebutkan dan jelaskan macam-macam bentuk tree yang Anda ketahui! JENIS-JENIS TREE Binary Tree Suatu tree dengan syarat bahwa tiap node hanya boleh memiliki maksimal dua subtree dan kedua subtree tersebut harus terpisah. Tiap node dalam binary tree hanya boleh memiliki paling banyak dua child. Jenis Binary Tree I. Full Binary Tree (Pohon Biner Penuh) adalah pohon biner yang setiap nodenya pasti memiliki 0 atau 2 node anak. Semua node (kecuali leaf) pasti memiliki 2 anak dan tiap subtree memiliki panjang path yang sama. Almost Complete Binary Tree (Pohon Biner Hampir Lengkap) adalah pohon biner yang setiap nodenya dapat memiliki 0 node anak, atau memiliki kiri, atau jika memiliki kanan harus memiliki kiri. Tidak boleh memiliki kanan saja. 3

Complete Binary Tree (Pohon Biner Lengkap), mirip dengan full binary tree, tapi tiap subtree boleh memiliki panjang path yang berbeda dan tiap node (kecuali leaf) memiliki 2 anak. Skewed Binary Tree merupakan binary tree yang semua nodenya (kecuali leaf) hanya memiliki satu anak. II. AVL tree, merupakan tree yang mempunyai ketentuan sebagai berikut : a. The height of the left and right subtrees of the root are equal b. The left and right subtrees of the root are perfectly balanced binary trees An AVL tree (or height-balanced tree) is a binary search tree such that: The height of the left and right subtrees of the root differ by at most 1 The left and right subtrees of the root are AVL trees 4

4. Jelaskan macam-macam node transversal (Jelaskan dengan gambar)! Pre-Order Kunjungi node Kunjungi left child Kunjungi right child In-Order Kunjungi left child Kunjungi node Kunjungi right child Pos-Order Kunjungi left child Kunjungi right child Kunjungi node Pre-Order : A-B-D-C-E-F In-Order : B-D-A-E-C-F Pos-Order : D-B-E-F-C-A Inorder Traversal : 1+2*3 PreOrder Traversal : +1*23 PostOrder Traversal : 123*+ 5

5. Lakukan tranversal pada binary tree berikut ini! Preorder Inorder Posorder 6. Representasikan binary node dalam java! import java.util.*; public class binarytreetest { public static void main(string[] args) { System.out.println("Implementasi Binary Tree"); new binarytreetest().run(); static class Node { Node left; Node right; int value; public Node(int value) { this.value = value; public void run() { // build the simple tree from chapter 11. Node root = new Node(5); System.out.println("Nilai root : " + root.value); insert(root, 1); insert(root, 8); insert(root, 6); insert(root, 3); insert(root, 9); insert(root, 20); insert(root, 2); System.out.println("Traversing tree secara in order"); printinorder(root); System.out.println("Traversing tree dari depan ke belakang"); printfronttoback(root, 7); public void insert(node node, int value) { if (value < node.value) { if (node.left!= null) { insert(node.left, value); 6

dari " kanan dari " else { System.out.println(" Diinsertkan " + value + " ke kiri + node.value); node.left = new Node(value); else if (value > node.value) { if (node.right!= null) { insert(node.right, value); else { System.out.println(" Diinsertkan " + value + " ke + node.value); node.right = new Node(value); public void printinorder(node node) { if (node!= null) { printinorder(node.left); System.out.println(" Tranversalnya : " + node.value); printinorder(node.right); /** * uses in-order traversal when the origin is less than the node's value * * uses reverse-order traversal when the origin is greater than the node's * order */ public void printfronttoback(node node, int camera) { if (node == null) return; if (node.value > camera) { // print in order printfronttoback(node.left, camera); System.out.println(" Tranversalnya : " + node.value); printfronttoback(node.right, camera); else if (node.value < camera) { // print reverse order printfronttoback(node.right, camera); System.out.println(" Tranversalnya : " + node.value); printfronttoback(node.left, camera); else { // order doesn't matter printfronttoback(node.left, camera); printfronttoback(node.right, camera); 7

7. Jelaskan implementasi Huffman Algoritma dan kegunaannya! IMPLEMENTASI Sebagai contoh, misalnya kita mempunyai pesan A B A C C D A yang coba kita ubah dengan menggunakan kode Huffman, maka kodenya secara binary biasa adalah dimana pengkodean ini memerlukan 14 bit. Bandingkan jika kita melakukan pegkodean dengan menggunakan algoritma Huffman berikut, yang hanya memerlukan 13 bit, atau satu bit lebih pendek. Adapun cara mendapatkan kode Huffman-nya adalah sebagai berikut, I. Urutkan simbol-simbol pesan yang kita miliki, kemudian cacah berapa banyak frekuensi kemunculannnya, II. Gabungkan 2 buah symbol yang mempunyai jumlah frekuensi yang terendah (dalam contoh ini, adalah karakter B dan D yang sama-sama memiliki frekuensi kemunculan 1) III. Ulangi kembali proses pada langkah II (yakni karakter C dan BD ). 8

IV. Kembali ulangi proses diatas, sampai akhirnya kita mendapatkan gabungan dari keseluruhan symbol yakni, ACDB yang mempunyai frekuensi 7 V. Implementasikan symbol ACDB kedalam Huffman tree ACDB :7 A:3 CDB:4 C:2 DB:2 B:1 D:1 VI. Setiap cabang kekiri bernilai 0 dan cabang kekanan bernilai 1 VII. Sehingga didapat kode : A = 0 C = 10 B = 110 D = 111 KEGUNAAN Huffman Algoritma merupakan salah satu algoritma yang berguna untuk melakukan kompresi pada suatu file, atau data yang berupa bit-bit kode sehingga data yang direpresentasikan menjadi lebih sederhana. 9