Menggambar Tree wijanarto.

Slides:



Advertisements
Presentasi serupa
Struktur Data Departemen Ilmu Komputer FMIPA-IPB 2009
Advertisements

Tree Kumpulan node yang saling terhubung satu sama lain dalam suatu kesatuan yang membentuk layaknya struktur sebuah pohon. Struktur pohon adalah suatu.
STRUKTUR DATA (10) tree manipulation
Binary Tree Traversal.
By : Fitroh Amaluddin & Galih Wasis W.
Algoritma dan Struktur Data
Implementasi Binary Tree
Pertermuan 10 PADA POHON BINER KUNJUNGAN IMAM SIBRO MALISI
Tree.
Kuliah ke-9 Struktur Data Pohon/Tree (Bab 6)
Tree Yuliana S.
Pohon.
PART 4 TREE (POHON) Dosen : Ahmad Apandi, ST
P OHON 1. D EFINISI Pohon adalah graf tak-berarah terhubung yang tidak mengandung sirkuit 2.
Binary Tree Rangga Juniansyah.
Pertemuan 6 TREE & BINARY TREE
Penelusuran Bab 7 Pohon Biner 219.
Algoritma dan Struktur Data
Binary Search Tree 2007/2008 – Ganjil – Minggu 9.
Tenia Wahyuningrum, S.Kom. MT
4. Pohon (Tree) 4.1. Definisi Rekurens Dari Pohon
STRUKTUR DATA tree manipulation
BINARY TREE Universitas Ahmad Dahlan
Algoritma dan Struktur Data
Tree. Tree (Pohon) Dalam dunia nyata, sebuah pohon memiliki : akar, cabang, daun. Dalam dunia komputer, pohon (tree) memiliki 3 (tiga) bagian tersebut.
Pertemuan 21 BASIC SEARCH AND TRAVERSAL
Struktur Data Tree Eka Rahayu S. (2 Agustus 2011).
Binary Tree.
POHON / TREE.
Pohon Seimbang / AVL Tree (Bab 6)
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
Defri Kurniawan POHON DAN POHON BINER Defri Kurniawan
TREE STRUCTURE (Struktur Pohon)
STRUKTUR DATA Chapt 6 : TREE Oleh : Yuli Praptomo PHS, S.Kom.
Struktur Data Binary Search Tree (BST)
Pohon dan Pohon Biner Anifuddin Azis.
PohonBiner Rachmansyah, S.Kom..
Manipulasi Tree.
Tim Struktur Data Program Studi Teknik Informatika UNIKOM
STRUKTUR DATA Tree (Struktur Pohon).
Kunjungan Pada Pohon Biner
NAMA : SITI HAJAR NIM : UNIT : B NO.HP :0852 –
STRUKTUR DATA 2014 M. Bayu Wibisono.
Manipulasi 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.
Algoritma dan Struktur Data
Pohon Rinaldi M/IF2120 Matdis.
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
Binary Search Tree (BST)
IT234 Algoritma dan Struktur Data
Rahmady Liyantanto liyantanto.wordpress.com
Pohon Biner.
Algoritma dan Struktur Data
Binary Search Tree (BST)
IT234 Algoritma dan Struktur Data
TREE Oleh : Neny silvia Nurhidayah Afny wilujeng Setyorini
Binary Search Tree (BST)
Review Struktur Data Nisa’ul Hafidhoh, MT.
Transcript presentasi:

Menggambar Tree wijanarto

Pohon Sembarang Insert Leveling Traversal Preorder Nilai Tree 1 3 2 3 Insert Leveling Traversal Preorder 1 18 4 6 11 21 5 6 11 9 19 24 4 16 Pre : 3,1,18,11,4,5,16,14,21,19,24,26 In : 1,3,4,5,11,14,16,18,19,21,24,26 Post :1,5,4,14,16,11,19,26,24,21,18,3 10 7 8 26 5 14 Nilai Tree 3,1,18,11,4,21,16,5,14,24,26,19 Urutan 1,2, 3, 4, 5, 6, 7, 8, 9,10, 11,12

BST Metode Kunjungan LDR =Left Data Right LRD =Left Right Data DLR =Data Left Right RDL =Righ Data Left RLD =Right Left Data DRL =Data Right Left

Traversal Tree

Gambar Sembarang BTree Ada pohon biner sembarang 1 Pre Order : cetak kiri kanan 3 In Order : kiri cetak kanan 1 3 5 5 Post Order : kiri kanan cetak cetak tiap kunjungan 4 4 4 2 1 2 5 3 2 1 5 3

Membaca Gambar Tree Pre Order = 30, 40, 15, 27, 45 In Order = 40, 15, 30, 27, 45 Post Order = 15, 40, 45, 27, 30 Level = 30, 40, 27, 15, 45 (Pada pembacaan level, dimulai dr level akar, kiri, kanan, turun ke level selanjutnya, kiri, kanan, begitu seterusnya )

Contoh 1 Diket: Tree In Order : 7, 4, 3, 12, 6, 1, 13 Ditanya : Gambar Sembarang Pohon Biner dalam InOrder Tuliskan PreOrder-nya?

Jawab 1 Sembarang BTree InOrder PreOrder dari Gambar InOrder Ingat InOrder : LDR atau Kiri Data Kanan Ingat PreOrder : DLR atau Data Kiri Kanan 4 12 1 1 7 4 7 3 13 12, 7, 3, 4, 13, 6, 1 1 2 3 4 5 6 7 2 3 5 7 3 4 3 6 5 6 2 6 3 6 4 1 1 1 4 4 4 1 7 7 4 7 Hasil :Tidak UNIK 7, 4, 3, 12, 6, 1, 13 1 2 3 4 5 6 7

Contoh 2 terurut Diket: Tree In Order : 1, 2, 3, 4, 5, 6,7 Ditanya : Gambar Sembarang Pohon Biner dalam InOrder Tuliskan PostOrder-nya?

Jawab 2 Sembarang BTree InOrder PostOrder dari Gambar InOrder Ingat InOrder : LDR atau Kiri Data Kanan Ingat PostOrder : LRD atau Kiri Kanan Data 3 3 7 2 7 5 1, 2, 4, 7, 6, 5, 3 1 2 3 4 5 6 7 1 2 5 4 6 4 1 5 6 6 4 5 6 1 1 6 4 5 2 4 2 2 1 7 7 3 Hasil :Tidak UNIK 4 5 1, 2, 3, 4, 5, 6, 7 1 2 3 4 5 6 7 4 5 6 6

Solusi Unik Menggambar InOrder Tree : InOrder PreOrder  Gambar InOrder PostOrder

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas Preorder Inorder a b c d f g e c b f d g a e

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas Preorder inorder a b c d f g e c b f d g a e

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder a b c d f g e c b f d g a e

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder Postorder a b c d f g e c b f d g a e

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder Postorder a b c d f g e c b f d g a e

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder Inorder e a b c d f g e c b f d g a e b c d f g c b f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e b c d f g c b f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e b c d f g c b f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e b c d f g c b f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c b c d f g c b f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c b c d f g c b f d g d f g f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder Postorder b e a b c d f g e c b f d g a e c b c d f g c b f d g d f g f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c b c d f g c b f d g d f g f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c d b c d f g c b f d g d f g f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c d b c d f g c b f d g d f g f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c d b c d f g c b f d g d f g f d g

Membuat tree dari pre dan inorder Di berikan traversal pre dan inorder dari binary tree, kita dapat membuat tree yang unik dengan mengetahui 2 traversal di atas a Preorder inorder b e a b c d f g e c b f d g a e c d b c d f g c b f d g c d d f g f d g

Membuat tree dari post dan inorder Dengan cara yang sama dengan preorder kita dapat lakukan untuk membangun tree yang unik. Dalam post maka root ada di paling belakang, jadi kita dapat lakukan traversal dalam inorder dan menghasilkan node baru dari root dalam postorder

Bagaimana dengan pre dan post Tree yang di hasilkan tidak unik Pre : a b c Post : c b a a a b b c c

Kasus khusus Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal a preorder postorder a b c d f g e c f g d b e a

Kasus khusus Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal a e preorder postorder a b c d f g e c f g d b e a

Kasus khusus Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal a e preorder postorder a b c d f g e c f g d b e a Karena e dalam preorder tidak punya anak Maka e adalah pasti leaf dan terletak di sebelah Kanan a

Kasus khusus Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal a e preorder postorder a b c d f g e c f g d b e a b c d f g c f g d b

Kasus khusus Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal a b e preorder postorder a b c d f g e c f g d b e a b c d f g c f g d b

Kasus khusus Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal a b e preorder postorder a b c d f g e c f g d b e a b c d f g c f g d b

Kasus khusus a Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal b e d Karena d mrpk anak kanan b, maka dalam Preorder node di belakangnya juga Merupakan anak kanan dari b, dan c pasti Mrpk anak kiri dari b. Dan pada metode post tinggal mengikuti preorder postorder a b c d f g e c f g d b e a b c d f g c f g d b

Kasus khusus a Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal b e c d Karena c pada post berupa leaf, dan terletak di sebelah kiri b maka kita dapat tuliskan. preorder postorder a b c d f g e c f g d b e a b c d f g c f g d b

Kasus khusus a Jika tiap internal node dari binary tree memiliki setidaknya dua anak maka tree dapat di tentukan dari pre dan post order traversal b e c d f g preorder postorder a b c d f g e c f g d b e a b c d f g c f g d b d f g f g d

Contoh lain Diketahui tree : In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 (index) 11 10 9 8 7 6 5 4 3 2 1 Jelas akarnya diketahui adalah 40, karena Post Order nilai terkanan merupakan akarnya. Bagaimana Gambar Tree dalam In Order ?

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 1 Akar=40 Sesuai urutan index dalam post order, ambil nilai index ke-2 (45) dari postorder dan tentukan posisi nilai tersebut (45) terhadap akar (40) pada inorder (diletakkan di kiri atau kanan ?). Karena 45>40 maka bikin node baru di kanan 40.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 2 Selanjutnya ambil nilai index ke-3 dari postorder (55), dan bandingkan dengan nilai 45. Karena 55>45, jadi nilai 55 ada di kanan 45.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 3 Selanjutnya ambil nilai index ke-4 dari postorder (50), dan bandingkan dengan nilai 55. Karena 50 < 55, jadi nilai 50 ada di kiri 55.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 4 Selanjutnya ambil nilai index ke-5 dari postorder (35), karena 35 lebih kecil dar akar maka buat node baru di sebelah kiri akar. Karena 35<40, jadi nilai 35 ada di kiri 40.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 5 Selanjutnya ambil nilai index ke-6 dari postorder (10), karena 10< dari akar maka perbandingan ke sebelah kiri, yaitu dengan 35. Karena 10<35, jadi nilai 10 ada di kiri 35.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 6 Selanjutnya ambil nilai index ke-7 dari postorder (30), dan bandingkan dengan 10, Karena 30>10, jadi nilai 30 ada di kanan 10.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 7 Selanjutnya ambil nilai index ke-8 dari postorder (20), dan bandingkan posisinya dengan 30. Karena 20<30, jadi nilai 20 ada di kiri 30.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 8 Selanjutnya ambil nilai index ke-9 dari postorder (25), dan bandingkan dengan 20. Karena 25>20 maka 25 di sebelah kanan 20.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 9 Selanjutnya ambil nilai index ke-10 dari postorder (15), dan bandingkan dengan 20. Karena 15<20 maka 15 di sebelah kiri 20.

In Order : 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 Post Order : 5, 15, 25, 20, 30, 10, 35, 50, 55, 45, 40 Step 10 Selanjutnya ambil nilai index ke-11 dari postorder (5), dan bandingkan dengan node di sebelah kiri akar, cari nilai terkecil yang lebih besar dari 5, ternyata ada yaitu node dengan nilai 10, dan 5<10, jadi karena itu 5 diletakkan pada sebelah kiri 10.

Syarat untuk membaca dan menggambar tree : In dan Pre atau In dan post Apa yang kita dapatkan ? Jadi metode diatas merupakan langkah-langkah untuk menggambarkan Tree dari sebuah PostOrder dan InOrder list yang diketahui pada BST. Jika yang diketahui PreOrdernya untuk membuat gambar tree dengan : Baca bilangan mulai dari root dengan index kekiri(root preorder ada di sebelah paling kiri, dan diindex urut kekanan). Jika nilai<root, sambungkan/letakkan node tersebut di sebelah kiri root dan jika nilai>root sambungkan /letakkan node tersebut di sebelah kanan root. Syarat untuk membaca dan menggambar tree : In dan Pre atau In dan post