Anda di halaman 1dari 8

Modul VIII Tree

MODUL VIII
TREE

8.1 TUJUAN
1. Memperkuat pemahaman bagaimana mendeklarasikan struktur node untuk tree
2. Menyisipkan suatu node dalam tree dan mengakses tree
3. Mengimplementasikan tree untuk menyelesaikan suatu permasalahan

8.2 DASAR TEORI


8.2.1 Pengertian Tree
Tree merupakan salah satu bentuk struktur data bukan linier yang
menggambarkan bentuk hierarki antara elemen-elemen. Tree biasanya terdiri dari root
(akar) dan node-node (simpul-simpul) yang berada di bawah root. Struktur seperti tree
sangat banyak sekali dgunakan dalam dunia nyata, misalnya: struktur organisasi suatu
perusahaan, pengaturan filesystem, daftar isi sebuah buku, dan masih banyak lagi.

 Degree (derajat) adalah jumlah edge yang keluar dan masuk dari sebuah node.
Contoh : node E memiliki in degree 1 dan out degree 2
 Root (akar) adalah node yang memiliki derajat keluar >=0 dan derajat masuk = 0.
Contoh : node A adalah root
 Subtree / child adalah bagian salah satu node dibawah root sampai ke bawah.
Contoh : tree C adalah right subtree dari A dan tree B merupakan left subtree dari

Praktikum Algoritma dan Struktur Data 2019


Modul VIII Tree

A node G dan F merupakan child dari node C. node F merupakan parent dari node


J dan K
 Ancestor adalah Node yang berada di atas node lain. Contoh : node B adalah
ancestor dari node E
 Descendant adalah node yang berada di bawah node lain. Contoh : node E adalah
descendant dari node A.
 Leaf (daun) adalah semua node yang derajat masuknya 1 dan derajat keluarnya 0.
Contoh : node D, H, I, J, K, dan G adalah leaf
 Sibling adalah node yang mempunyai level yang sama dan parent yang sama.
Contoh : node D adalah sibling dari node A
 Height (ketinggian) adalah level tertinggi dari tree ditambah 1. Contoh : height dari
tree A adalah 3 + 1 = 4
 Weight (bobot) adalah jumlah leaf(daun) pada tree. Contoh : weight dari tree A
adalah 6

8.2.2 Binary Tree


Binary Tree adalah tree dengan syarat bahwa tiap node hanya boleh memiliki
maksimal dua subtree dan kedua subtree tersebut harus terpisah. Sesuai dengan definisi
tersebut, maka tiap node dalam binary tree hanya boleh memiliki paling banyak dua child.

8.2.3 Operasi Dalam Tree


Berikut adalah operasi-operasi yang terdapat dalam binary tree.
1. Create : Membentuk binary tree baru yang masih kosong.
2. Clear : Mengosongkan binary tree yang sudah ada.

Praktikum Algoritma dan Struktur Data 2019


Modul VIII Tree

3. Empty : Function untuk memeriksa apakah binary tree masih kosong.


4. Insert : Memasukkan sebuah node ke dalam tree. Ada tiga pilihan insert: sebagai
root, left child, atau right child. Khusus insert sebagai root, tree harus dalam
keadaan kosong.
5. Find : Mencari root, parent, left child, atau right child dari suatu node. (Tree tak
boleh kosong)
6. Update : Mengubah isi dari node yang ditunjuk oleh pointer current. (Tree tidak
boleh kosong)
7. Retrieve : Mengetahui isi dari node yang ditunjuk pointer current. (Tree tidak boleh
kosong)
8. DeleteSub : Menghapus sebuah subtree (node beserta seluruh descendantnya)
yang ditunjuk current. Tree tak boleh kosong. Setelah itu pointer current akan
berpindah ke parent dari node yang dihapus.
9. Characteristic : Mengetahui karakteristik dari suatu tree, yakni : size, height, serta
average lengthnya. Tree tidak boleh kosong. (Average Length =
[jumlahNodeLvl1*1+jmlNodeLvl2*2+…+jmlNodeLvln*n]/Size)
10. Traverse : Mengunjungi seluruh node-node pada tree, masing-masing sekali.
Hasilnya adalah urutan informasi secara linier yang tersimpan dalam tree. Ada tiga
cara traverse : Pre Order, In Order, dan Post Order.

8.2.4 Binary Search Tree


Pohon cari biner adalah pohon biner yang dirancang untuk menskemakan urutan
data yang akan dimasukkan ke dalam memori agar proses pencarian, penghapusan dan
penambahan data dapat berjalan secara efisien dibanding dengan pemasukan data
secara array maupun link. Sifat dari skema pohon cari biner adalah :
(1) setiap elemen yang berada di left substrees selalu lebih kecil dari elemen yang
ada di right substrees,
(2) setiap elemen yang berada di right substrees selalu lebih besar atau sama dengan
elemen yang berada di left substrees.

Contoh : diketahui sekumpulan elemen sebagai berikut :


60, 75, 25, 50, 15, 66, 33, 44

Praktikum Algoritma dan Struktur Data 2019


Modul VIII Tree

Pembentukan awal skema pohon binernya berturut-turut sebagai berikut :

dan, hasil akhirnya sebagai berikut :

Praktikum Algoritma dan Struktur Data 2019


Modul VIII Tree

8.3 JOBSHEET
No. Latihan Script dan Analisa
1

Praktikum Algoritma dan Struktur Data 2019 VIII - 5


Modul VIII Tree

8.4 KESIMPULAN

Praktikum Algoritma dan Struktur Data 2019


Modul VIII Tree

DAFTAR PUSTAKA

Praktikum Algoritma dan Struktur Data 2019


Modul VIII Tree

LAMPIRAN
No. Latihan Flowchart Screenshot

Praktikum Algoritma dan Struktur Data 2019 VIII - 8

Anda mungkin juga menyukai