Pohon (Tree) 1. Definisi Rekurens Dari Pohon

dokumen-dokumen yang mirip
STRUKTUR DATA. Pengajar Jaidan Jauhari,, MT. Alamat Halaman 1

STRUKTUR DATA. Pengajar Jaidan Jauhari,, MT. Alamat Halaman 1

Pohon Biner (Bagian 1)

Pohon Biner. Tim Pengajar IF2030 Semester I/ /8/2009 FNA/IF2030/Sem

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

Tipe Rekursif: POHON (TREE)

BAB IV POHON. Diktat Algoritma dan Struktur Data 2

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

6. TREE / BINARY TREE

Pemrograman Algoritma Dan Struktur Data

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

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

Pohon (Tree) Universitas Gunadarma Sistem Informasi 2012/2013

ALGORITMA DAN STRUKTUR DATA

MODUL PRAKTIKUM STRUKTUR DATA Modul ke-1, Pertemuan ke-1 Nama file : P01-XXX (XXX adalah 3 digit terakhir NIM) Deskripsi: Senarai, Traversal

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

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

POHON CARI BINER (Binary Search Tree)

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

Struktur Data. Queue (Antrian)

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

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

Pertemuan 9 STRUKTUR POHON & KUNJUNGAN POHON BINER

Optimalisasi Algoritma Pencarian Data Memanfaatkan Pohon Biner Terurut

Pohon Biner Bagian 2 (Pohon Seimbang, Pohon Biner Terurut, Pembangunan Pohon Biner dari Pita Karakter/String)

Buku Ajar Struktur Data

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

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

TREE STRUCTURE (Struktur Pohon)

Ringkasan mengenai Tree (Dari beberapa referensi lain) Nina Valentika

GANJIL 2009/2010 NIM: Algoritma dan Struktur Data / CS2014 Nama :

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

STRUKTUR POHON & KUNJUNGAN POHON BINER

Struktur dan Organisasi Data 2 POHON BINAR

Penerapan Pohon Untuk Menyelesaikan Masalah Labirin

Pohon dan Pohon Biner

Tree (Struktur Data) Nisa ul Hafidhoh, MT

STRUKTUR POHON. HUTAN Definisi : hutan adalah sequence (list) dari pohon)

BAB 7 POHON BINAR R S U

BAB VII POHON BINAR POHON

KUM 6 IMPLEMENTASI BINARY TREE

Implementasi Skema Pohon Biner yang Persistent dalam Pemrograman Fungsional

Penerapan Pohon Untuk Memanipulasi dan Meritrieve Data

ANALISIS ALGORITMA PEMBANGUN POHON EKSPRESI DARI NOTASI PREFIKS DAN POSTFIKS

BAB VII Tujuan 7.1 Deskripsi dari Binary Tree

Pohon (Tree) Contoh :

BAB XI Manipulasi Binary Tree

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

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

DIKTAT KULIAH ALGORITMA dan STRUKTUR DATA II

STRUKTUR DATA. By : Sri Rezeki Candra Nursari 2 SKS

Termilogi Pada Pohon Berakar 10 Pohon Berakar Terurut

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

TREE. Definisi. Istilah-istilah Umum dalam Tree

Politeknik Elektronika Negeri Surabaya

Binary Tree kosong Gambar 1. Binary Tree dalam kondisi kosong

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

TERAPAN POHON BINER 1

KUNJUNGAN PADA POHON BINER

INFIX, POSTFIX, dan PREFIX Bambang Wahyudi

IT234 Algoritma dan Struktur Data. Tree

LIST LINIER 1. DEFINISI

Algoritma dan Struktur Data. Linear & Binary Search Tree

List Linier. IF2030/Algoritma dan Struktur Data. 11/6/2009 FNA+WDS/IF2030/Sem

Struktur Data Tree/Pohon dalam Bahasa Java

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

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

SOAL TUGAS STRUKTUR DATA

Aplikasi Graf Breadth-First Search Pada Solver Rubik s Cube

METODE AVL TREE UNTUK PENYEIMBANGAN TINGGI BINARY TREE

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

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

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator

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

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

MODUL PRAKTIKUM STRUKTUR DATA

Pertemuan 15 REVIEW & QUIS

Struktur Data. PDE - Struktur Data 1

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

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

BAB II STACK Atau TUMPUKAN

BAB IX TREE (POHON) ISTILAH DASAR

PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING)

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

Penerapan BFS dan DFS pada Pencarian Solusi

BAB 2 LANDASAN TEORI

Penerapan BFS dan DFS pada Pencarian Solusi

13/12/2013. Binary Tree. Contoh Tree

Penggunaan Pohon Biner Sebagai Struktur Data untuk Pencarian

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

ANALISIS ALGORITMA BINARY SEARCH

BAB IX LINKED LIST (SENARAI BERANTAI)

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

UJIAN AKHIR SEMESTER GANJIL 2005/2006 ALGORITMA & STRUKTUR DATA / CS2014

ALGORITMA PENCARIAN SIMPUL SOLUSI DALAM GRAF

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

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

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

Penerapan Pohon Dalam Heap Sort

POHON BINAR 7.1 POHON. Gambar 7.1. Contoh pohon berakar

Transkripsi:

Pohon (Tree) 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) dibagibagi menjadi beberapa sub himpunan yang disjoint dan masing-masing sub himpunan tersebut adalah pohon yang disebut sebagai sub pohon dari pohon tersebut. 1

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 2

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 3

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 4

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. 5

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) 6

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. 7

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. 8

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

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

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

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

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} 13

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} 14

{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. AWAL : P terdefinisi K. AKHIR : Semua simpul P sudah diproses secara inorder} 15

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} 16

{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} 17

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} 18

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} 19

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} 20

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)} 21

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} 22