Anda di halaman 1dari 27

LAPORAN AKHIR

ALGORITMA dan STRUKTUR DATA

Disusun oleh :

Andi Muhammad Rivaldy Aljidannur (2109116097)


Ruswantomo (2109116118)
Muhammad Fazry Suhada (2109116099)

Muhammad Dwi Refansyah (2109116113)

PROGRAM STUDI SISTEM INFORMASI


FAKULTAS TEKNIK
UNIVERSITAS MULAWARMAN
2022

1
Kata Pengantar
Segala puji kami ucapkan atas kehadirat Tuhan Yang Maha Esa.
Karenanya kami dapat menyelesaikan Laporan Tugas akhir Algoritma dan
Struktur Data. Adapun materi yang tercantum pada materi ini ialah,avl dan b-
tree,binary search Tree,Binari Heap.

Dalam pembuatan laporan akhir, kami pasti tidak luput dari kesalahan,
namun berkat bantuan dan semangat dari teman-teman kelompok dan kelas,maka
kami dapat menyelesaikan laporan akhir ini. Atas selesainya laporan akhir ini,
kami menyampaikan rasa terima kasih yang sebesar-besarnya kepada:

1. Bapak Putut Pamilih Widagdo, S.Kom., M.Kom dan Bapak Amin Padmo Azam
Masa, S.Kom., M.Cs.Selaku Dosen pengampu mata kuliah Algoritma
Pemrograman Dasar Sistem Informasi

2. Serta semua pihak yang tidak dapat kami sebutkan satu persatu, yang telah
membantu menyelesaikan laporan akhir ini.
Kami sebagai mahasiswa program studi sistem informasi sadar atas laporan tugas
akhir ini jauh dari kata sempurna, karena itu kritik dan saran akan sangat berguna
dalam membangun kesempurnaan dalam laporan ini, kami berharap laporan ini
bisa berguna bagi mahasiswa ataupun siapa saja yang sedang membacanya.

Samarinda, 22 May 2022


Kelompok 1

II
DAFTAR ISI

Kata Pengantar...........................................................................................................2

DAFTAR ISI..................................................................................................................3

DAFTAR GAMBAR.......................................................................................................4

BAB I...........................................................................................................................6

PENDAHULUAN.......................................................................................................6

1.1 Latar Belakang...................................................................................................6

1.2 Rumusan Masalah.............................................................................................7

1.3 Tujuan Penulisan...............................................................................................7

BAB II..........................................................................................................................8

ISI.............................................................................................................................8

2.1 Abstrack Data Type............................................................................................8

2.2 Avl tree dan b-tree..........................................................................................10

2.3 Binary Search Tree...........................................................................................17

2.4 Binary Heap.....................................................................................................22

BAB III.......................................................................................................................26

PENUTUP...............................................................................................................26

3.1 Kesimpulan......................................................................................................26

3.2 Saran................................................................................................................26

DAFTAR PUSTAKA.....................................................................................................27

III
DAFTAR GAMBAR
gambar 1. 1..............................................................................................................................................11

gambar 1. 2..............................................................................................................................................12

gambar 1. 3..............................................................................................................................................12

gambar 1. 4..............................................................................................................................................13

gambar 1. 5..............................................................................................................................................13

gambar 1. 6..............................................................................................................................................13

gambar 1. 7..............................................................................................................................................13

gambar 1. 8..............................................................................................................................................14

gambar 1. 9..............................................................................................................................................14

gambar 1. 10............................................................................................................................................14

gambar 1. 11............................................................................................................................................15

gambar 1. 12............................................................................................................................................16

gambar 1. 13............................................................................................................................................16

gambar 1. 14............................................................................................................................................17

gambar 1. 15............................................................................................................................................18

gambar 1. 16............................................................................................................................................18

gambar 1. 17............................................................................................................................................18

gambar 1. 18............................................................................................................................................19

gambar 1. 19............................................................................................................................................19

gambar 1. 20............................................................................................................................................19

gambar 1. 21............................................................................................................................................20

gambar 1. 22............................................................................................................................................20

gambar 1. 23............................................................................................................................................21

IV
gambar 1. 24............................................................................................................................................25

V
BAB I
PENDAHULUAN

1.1 Latar Belakang


Java adalah salah satu bahasa pemrograman populer yang digunakan untuk
mengembangkan aplikasi mobile, desktop, hingga website. Beberapa website besar
dunia seperti, Yahoo!, LinkedIn, dan Spotify ternyata juga telah menggunakan Java
untuk mengembangkan websitenya.

Java adalah bahasa pemrograman yang biasa digunakan untuk mengembangkan


bagian back-end dari software, aplikasi Android, dan juga website. Java juga dikenal
memiliki moto “Write Once, Run Anywhere”. Artinya, Java mampu dijalankan di
berbagai platform tanpa perlu disusun ulang menyesuaikan platformnya. Misalnya,
berjalan di Android, Linux, Windows, dan lainnya. Hal itu dapat terjadi karena Java
memiliki sistem syntax atau kode pemrograman level tinggi. Di mana ketika dijalankan,
syntax akan di-compile dengan Java Virtual Machine (JVM) menjadi kode numeric
(bytescode) platform. Sehingga aplikasi Java bisa dijalankan di berbagai perangkat.

Dalam ilmu komputer, tree adalah sebuah struktur data yang secara bentuk
menyerupai sebuah pohon, yang terdiri dari serangkaian node (simpul) yang saling
berhubungan. Node-node 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). Dalam mata kuliah struktur data, secara khusus akan dipelajari mengenai
pohon biner. Pohon biner adalah sebuah tree yang pada masing-masing
simpulnya hanya dapat memiliki maksimum 2 (dua) simpul anak. Tidak boleh

6
lebih. Pada pohon biner, umumnya kedua node anak disebut dengan posisinya,
yaitu kiri dan kanan.

1.2 Rumusan Masalah

Berdasarkan latar belakang di atas, maka dapat diambil rumusan masalah sebagai
berikut:
1).Bagaimana cara menjelaskan algoritma suatu tree.
2).Bagaimana mengimplementasikan suatu
algoritma.

1.3 Tujuan Penulisan

Adapun tujuan dalam penulisan laporan ini antara berikut:


1).Untuk memudahkan dalam memahami struktur data dari avl dan B-
Tree,Binary Search Tree,dan Binary Heap
2).Untuk menambah wawasan mahasiswa mengenai suatu algoritma tree.

3).Dapat dijadikan refrensi untuk mahasiswa atau orang yang membutuhkan.

7
BAB II
ISI

2.1 Abstrack Data Type


a. Definisi

Tipe data abstrak atau yang dikenal sebagai Abstract Data Type adalah model
matematika dari obyek data yang menyempurnakan tipe data dengan cara
mengaitkannya dengan fungsi-fungsi yang beroperasi pada data yang
bersangkutan. Tipe data abstrak adalah tipe data yang didefinisikan sendiri oleh
pemrogram untuk suatu keperluan tertentu yang tidak memungkinkan untuk
mendeklarasikan dari tipe data yang sudah ada. Contoh tipe data abstrak adalah
stack, queue, list, tree, graph, dan lain-lain.

Harus dibedakan antara pengertian struktur data dan tipe data abstrak. Struktur
data hanya memperlihatkan bagaimana data-data di organisir, sedangkan tipe data
abstrak mengemas struktur data tertentu sekaligus dengan operasi-operasi yang
dapat dilakukan pada struktur data tersebut. Dengan demikian, definisi umum
tentang tipe data abstrak dapat dipahami bahwa tipe data abstrak adalah struktur
data yang mengandung operasi-operasi atau aturan-aturan tertentu.

b. Contoh

Tipe buatan (user-defined): stack, queue, tree, dll

ADT Built-in:

Boolean

Nilai: true dan false

Operasi: and, or, not, xor, dll

Integer

Nilai: Semua bilangan

Operasi: tambah, kurang, kali, bagi, dll

8
c. Algoritma

Operasi pada Tree[1]

Create

Create digunakan untuk membentuk binary tree baru yang masih kosong.

Clear

Clear digunakan untuk mengosongkan binary tree yang sudah ada.

Empty

Empty digunakan untuk memeriksa apakah binary tree masih kosong.

Insert

Insert digunakan untuk memasukkan sebuah node ke dalam tree.

Find

Find digunakan untuk mencari root, parent, left child , atau right child dari suatu
node dengan syarat tree tidak boleh kosong.

Update

Update digunakan untuk mengubah isi dari node yang ditunjuk oleh pointer
current dengan syarat tree tidak boleh kosong.

Retrieve

Retrieve digunakan untuk mengetahui isi dari node yang ditunjuk pointer current
dengan syarat tree tidak boleh kosong.

Delete Sub

DeleteSub digunakan untuk menghapus sebuah sub-tree (node beserta seluruh


descendant-nya) yang ditunjuk pointer current dengan syarat tree tidak boleh
kosong.

Characteristic

Characteristic digunakan untuk mengetahui karakteristik dari suatu tree, yakni


size, height, serta average length-nya.

Traverse

Traverse digunakan untuk mengunjungi seluruh node-node pada tree, masing-


masing sekali.

9
2.2 Avl tree dan b-tree

a.Definisi

1. AVL Tree adalah Binary Search Tree yang memiliki perbedaan tinggi/level
maksimal 1 antara subtree kiri dan kanan. AVL Tree digunakan untuk
menyeimbangkan Binary Search, mempersingkat waktu pencarian, dan
menyederhanakan bentuk tree.

AVL Tree juga merupakan elf-balancing Binary Tree, yaitu Binary Tree
yang menyetarakan isi nodenya. Bentuknya seperti Binary Search Tree.
Namun di AVL Tree, tinggi dari setiap node diperhatikan.

Peraturan yang harus diperhatikan dalam setiap node:

Tinggi subtree yang kosong: 0.

Tinggi dari sebuah leaf (ujung ): 1.

Tinggi dari setiap node adalah tinggi dari setiap anaknya ditambah 1

Peraturan wajib atau yang biasa disebut sebagai Balance Factor(Faktor


Keseimbangan) dalam AVL Tree adalah perbedaan tinggi subtree kiri dan
kanan tidak lebih dari 1.

2. Binary Tree merupakan salah satu bentuk struktur data tidak linear yang
menggambarkanhubungan yang bersifat hirarkis (hubungan one to many)
antara elemen-elemen. Tree bisa didefinisikan sebagai kumpulan
simpul/node dengan satu elemen khusus yang disebut Root dan node
lainnya ( disebut subtree).Dalam tree terdapat jenis-jenis tree yang
memiliki sifat khusus, diantaranya adalah binary tree. Binary tree adalah
suatu tree dengan syarat bahawa tiap node (simpul) hanya boleh memiliki
maksimal dua subtree dan kedua subtree tersebut harus terpisah. Tiap node

10
dalam binary treee boleh memiliki paling banyak dua child (anak simpul),
secara khusus anaknya dinamakan kiri dan kanan.

b.C ontoh
1. AVL tree

gambar 1. 1

11
2.B-Tree

gambar 1. 2

c.A lgoritma
1. AVL Tree
AVL Tree Operations :
1. Insertion
2. Deletion

Insertion

Ada 4 Kondisi yang biasa terjadi saat Insertion dilakukan, yaitu :

1. Node terdalam terletak pada subtree kiri dari anak kiri T (left - left)
2. Node terdalam terletak pada subtree kanan dari anak kanan T (right -
right)
3. Node terdalam terletak pada subtree kanan dari anak kiri T (right - left)
4. Node terdalam terletak pada subtree kiri dari anak kanan T (left - right)

Empat kondisi diatas bisa diatasi dengan melakukan rotasi. Kondisi 1 & 2
dengan single rotation, dan Kondisi 3 & 4 dengan double rotation.

1. Left Rotation, disaat node diinsert ke subtree kanan dari subtree kanan.

gambar 1. 3

Caranya adalah merubah A menjadi subtree kiri dari B, B menjadi root.


2. Right Rotation, disaat node diinsert ke subtree kiri dari subtree kiri.

12
gambar 1. 4

Caranya adalah merubah C menjadi subtree kanan dari B, B menjadi root.

3. Left-Right Rotation, rotasi gabungan dari Left rotation yang diikuti dengan
Right rotation.

gambar 1. 5

Node diinsert ke subtree kanan dari subtree kiri yang membuat C menjadi
unbalanced node. kasus ini membuat left-right rotation dilakukan.

gambar 1. 6

Pertama, kita melakukan left rotation di subtree kiri dari C, yang


menjadikan A subtree kiri dari B.

gambar 1. 7

13
Setelah tree menjadi seperti yang tergambarkan diatas, selanjutnya lakukan
Right rotation, dan tree akan balanced.

4. Right-Left Rotation, rotasi gabungan dari Right rotation yang diikuti


dengan Left rotation.

gambar 1. 8

Node diinsert ke subtree kiri dari subtree kanan, yang menjadikan node A
unbalanced dengan balance factornya adalah 2.

gambar 1. 9

Pertama, lakukan right rotation C node, yang menjadikan C menjadi


subtree kanan dari B, B menjadi subtree kanan dari A.

gambar 1. 10

Setelah seperti ini, lakukan left rotation dan tree akan balanced.

Deletion

14
Operasi Deletion node pada AVL Tree sama seperti pada Binary Search
Tree. Node yang dihapus digantikan oleh node terbesar pada subtree kiri
atau node terkecil pada subtree kanan.
Ada 2 Kasus yang biasanya terjadi saat operasi delete dilakukan, yaitu :
Jika node yang akan dihapus berada pada posisi leaf/node tanpa anak, maka
bisa langsung dihapus
Jika node yang akan dihapus memiliki anak, maka proses penghapusan
harus di cek kembali untuk menyeimbangkan Binary Search Tree.
Anggap T adalah node yang harus diseimbangkan kembali :
Kasus 1 : node terdalam terletak pada subtree kiri dari anak kiri T (left-left)
Kasus 2 : node terdalam terletak pada subtree kanan dari anak kanan T
(right-right)
Kasus 3 : node terdalam terletak pada subtree kanan dari anak kiri T (right-
left)
Kasus 4 : node terdalam terletak pada subtree kiri dari anak kanan T (left-
right)
2.B Tree
Insert

Steps :
Cari dulu dimana key untuk lokasi peletakan node di sebuah tree
Jika di leaf yang hanya terisi 2-node maka kita bisa langsung insert
Jika leaf sudah 3-node dorong data tengah antara A, B dan kunci (A dan B
adalah dua data dalam bahwa 3-node) ke parentnya dan membagi dua data
yang tersisa menjadi dua 2-simpul. Rekursif sampai parent tidak memiliki
jumlah node yang lebih dari 2.

gambar 1. 11

Delete

Steps :
Pilih node yang ingin kita hapus
15
Jika leaf sudah 3-node, kita tinggal hapus node dan menjadi leaf yang berisi
2-node.
Jika berada di 2-node:
Jika parent adalah 3-node, mendapatkan satu nilai dari itu. Jika child yang
satu level adalah 3-simpul, dorong satu nilai dari child ke parent (untuk
membuat parent 3-simpul lagi). Jika child yang selevel adalah 2-node,
membuat parent 2-node dan menggabungkan node saat ini dengan child
yang selevel.
Jika induk 2-node. Jika saudara kandung adalah 3-node kemudian
mendapatkan satu nilai dari parent dan mendorong satu nilai dari child ke
parent nya. Lain menggabungkan parent dengan child yang selevel.
Rekursif sampai parent tidak memiliki jumlah node yang lebih dari 2.

gambar 1. 12

gambar 1. 13

16
2.3 Binary Search Tree
a.Definisi

Binary Search Tree (BST) merupakan tree yang terurut (ordered Binary Tree) yang
memiliki kelebihan bila dibanding dengan struktur data lain. Diantaranya adalah proses
pengurutan (sorting) dan pencarian (searching) dapat dilakukan bila data sudah tersusun
dalam struktur data BST. Pengurutan dapat dilakukan bila BST ditelusuri (traversed)
menggunakan metode in-order. Detail dari proses penelusuran ini akan dibahas pada
pertemuan selanjutnya. Data yang telah tersusun dalam struktur data BST juga dapat
dicari dengan mudah dan memiliki rata-rata kompleksitas sebesar O(log n), namun
membutuhkan waktu sebesar O(n) pada kondisi terjelek dimana BST tidak berimbang dan
membentuk seperti linked list seperti contoh berikut:

gambar 1. 14

b.Contoh

17
gambar 1. 15

c.Algoritma

Bila diketahui sederetan data 5, 3, 7, 1, 4, 6, 8, 9 maka pemasukan data tersebut dalam


struktur data BST, langkah per langkah, adalah sebagai berikut:

Langkah 1: Pemasukan data 5 sebagai root

gambar 1. 16

Langkah 2: Pemasukan data 3 disebelah kiri simpul 5 karena 3 < 5.

gambar 1. 17

Langkah 3: Pemasukan data 7 disebelah kanan simpul 5 karena 7 > 5

18
gambar 1. 18

Langkah 4: Pemasukan data 1. Karena data 1 lebih kecil dari data di root yaitu 5 maka
penelusuran dilanjutkan kesebelah kiri root. Kemudian karena disebelah kiri sudah ada daun
dengan nilai 3 dan data 1 lebih kecil dari data 3 maka data 1 disisipkan disebelah kiri simpul 3.

gambar 1. 19

Langkah 5: Pemasukan data 4.

gambar 1. 20

Langkah 6: Pemasukan data 6. Karena data 6 lebih besar dari data di root yaitu 5 maka
penelusuran dilanjutkan kesebelah kanan root. Kemudian karena disebelah kanan sudah ada
simpul dengan nilai 7 dan data 6 lebih kecil dari data 7 maka data 6 disisipkan disebelah kiri
simpul 7.

19
gambar 1. 21

Langkah 7: Pemasukan data 8. Karena data 8 lebih besar dari data di root yaitu 5 maka
penelusuran dilanjutkan kesebelah kanan root. Kemudian karena disebelah kanan sudah ada
simpul dengan nilai 7 dan karena data 8 lebih besar dari data 7 maka data 8 disisipkan disebelah
kanan simpul 7.

gambar 1. 22

Langkah 8: Pemasukan data 9. Karena data 9 lebih besar dari data di root yaitu 5 maka
penelusuran dilanjutkan kesebelah kanan root. Kemudian karena disebelah kanan bukan
merupakan daun yaitu simpul dengan nilai 7 dan karena data 9 lebih besar dari data 7
penelusuran terus dilanjutkan kesebelah kanan. Selanjutnya ditemukan daun dengan nilai 8,
karena data 9 lebih besar dari 8 maka data 9 disisipkan disebelah kanan simpul 8.

20
gambar 1. 23

21
2.4 Binary Heap

a.Definisi

Pengertian Heap Adalah struktur data yang berbentuk pohon yang memenuhi sifat-
sifat heap yaitu jika B adalah anak dari A, maka nilai yang tersimpan di simpul A
lebih besar atau sama dengan nilai yang tersimpan di simpul B.Hal ini
mengakibatkan elemen dengan nilai terbesar selalu berada pada posisi akar, dan
heap ini disebut max heap.(Bila perbandingannya diterbalikkan yaitu elemen
terkecilnya selalu berada di simpul akar, heap ini disebut adalah min heap).Karena
itulah, heap biasa dipakai untuk mengimplementasikan priority queue. Operasi-
operasi yang digunakan untuk heap adalah:

• Delete-max atau delete-min: menghapus simpul akar dari sebuah max


atau min heap.

• Increase-key atau decrease-key: mengubah nilai yang tersimpan di suatu


simpul.

• Insert: menambahkan sebuah nilai ke dalam heap.

• Merge: menggabungkan dua heap untuk membentuk sebuah heap baru


yang berisi semua pembentuk heap tersebut.
b.C ontoh

1. Binary heap
adalah heap yang dibuat dengan menggunakan pohon biner.

2. Binomial heap

22
adalah heap yang dibuat dengan menggunakan pohon binomial.

Pohon binomial bila didefinisikan secara rekursif adalah:

• Sebuah pohon binomial dengan tinggi 0 adalah simpul tunggal

• Sebuah pohon binomial dengan tinggi k mempunyai sebuah simpul akar


yang anak-anaknya adalah akar-akar pohon pohon binomial.

3. Fibonacci Heap
Fibonacci heap adalah kumpulan pohon yang membentuk minimum heap.

Pohon dalam struktur data ini tidak memiliki bentuk yang tertentu dan pada
kasus yang ekstrim heap ini memiliki semua elemen dalam pohon yang berbeda
atau sebuah pohon tunggal dengan tinggi Keunggulan dari Fibonacci heap adalah
ketika menggabungkan heap cukup dengan menggabungkan dua list pohon.

c.Algoritma

HeapSort adalah algoritma pengurutan data berdasarkan perbandingan, dan


termasuk golongan selection sort.Walaupun lebih lambat daripada quick sort pada
kebanyakan mesin , tetapi heap sort mempunyai keunggulan yaitu kompleksitas
algoritma pada kasus terburuk adalah n log n.Algoritma pengurutan heap sort ini
mengurutkan isi suatu larik masukan dengan memandang larik masukan sebagai
suatu Complete Binary Tree (CBT).Setelah itu Complete Binary Tree (CBT) ini
dapat dikonversi menjadi suatu heap tree. Setelah itu Complete Binary Tree (CBT)
diubah menjadi suatu priority queue.

Algoritma pengurutan heap dimulai dari membangun sebuah heap dari


kumpulan data yang ingin diurutkan, dan kemudian menghapus data yang
mempunyai nilai tertinggi dan menempatkan dalam akhir dari larik yang telah
terurut.

Setelah memindahkan data dengan nilai terbesar, proses berikutnya adalah


membangun ulang heap dan memindahkan nilai terbesar pada heap tersebut dan
menempatkannya dalam tempat terakhir pada larik terurut yang belum diisi data
lain.

23
Proses ini berulang sampai tidak ada lagi data yang tersisa dalam heap dan
larik yang terurut penuh. Dalam implementasinya kita membutuhkan dua larik –
satu untuk menyimpan heap dan satu lagi untuk menyimpan data yang sudah
terurut.Tetapi untuk optimasi memori, kita dapat menggunakan hanya satu larik
saja.Yaitu dengan cara menukar isi akar dengan elemen terakhir dalam heap
tree.Jika memori tidak menjadi masalah maka dapat tetap menggunakan dua larik
yaitu larik masukan dan larik hasil.

Heap Sort memasukkan data masukan ke dalam struktur data heap.Nilai


terbesar (dalam max-heap) atau nilai terkecil (dalam min-heap) diambil satu per
satu sampai habis, nilai tersebut diambil dalam urutan yang terurut.

Algoritma untuk heap sort :

function heapSort(a, count) is

input: sebuah larik tidak terurut a dengan panjang length

(pertama letakkan a dalam max-heap) heapify(a, count)

end := count -1

while end > 0 do

remove ( )

reheapify ( )

end := end – 1

Heap itu sebenarnya lebih "nikmat" menggunakan array biasa dibanding


pakai struct atau apalah itu. Soalnya, tiap data baru yang masuk, bakalan masuk di
index paling bawah yang kosong. Jadi, penomoran indexnya, saya pakai contoh
min heap di atas aja ya..

misalkan arraynya x. Maka:

x[1]=2; x[4]=51; x[7]=20;

x[2]=50; x[5]=100; dst

x[3]=4; x[6]=10;

24
Heap adalah sebuah binary tree dengan ketentuan sebagai berikut :
 Tree harus complete binary tree

-Semua level tree mempunyai simpul maksimum kecuali pada level terakhir.

-Pada level terakhir, node tersusun dari kiri ke kanan tanpa ada yang dilewati.
 Perbandingan nilai suatu node dengan nilai node child-nya mempunyai ketentuan

berdasarkan jenis heap, diantaranya :

-Max Heap mempunyai ketentuan bahwa nilai suatu node lebih besar atau sama

dengan ( >= ) dari nilai childnya.

-Min Heap mempunyai ketentuan bahwa nilai suatu node lebih kecil atau sama

dengan ( <= ) dari nilai childnya.

Contoh:

gambar 1. 24

25
BAB III
PENUTUP
3.1 Kesimpulan

Tree adalah bentuk struktur data nonlinier yang menggambarkan hubungan


hierarkis (satu-ke-banyak) antar elemen. Sebuah pohon dapat didefinisikan sebagai
kumpulan node dengan elemen khusus yang disebut root node dan node lainnya. Pohon
juga merupakan graf terhubung tak-lingkaran sederhana tanpa loop

3.2 Saran
Menurut riset dan survei, sistem pemrograman pada masa sekarang dan
masa yang akan datang merupakan hal yang sangat penting. Untuk itu,
diharapkan ilmu ini dapat terus berkembang dan para dosen serta asisten
laboratorium dapat memberikan materi dengan sangat baik kepada para
mahasiswa agar paham cara penggunaan pemrograman dalam kehidupan sehari –
hari, seperti contohnya program yang kami buat, yaitu program tabungan yang
dapat membantu para usaha dalam bidang jasa keuangan diluar sana. Serta
diharapkan akan ada lebih banyak jenis program yang dapat dibuat oleh generasi
sekarang maupun yang akan datang agar bisa membantu meringankan lebih
banyak pekerjaan di luar sana

26
DAFTAR PUSTAKA

2301893013, M. R. (May 09, 2020). AVL Tree & B-Tree. AVL Tree & B-Tree. Diambil kembali dari
https://dastrukraul.blogspot.com/2020/05/avl-tree-b-tree.html?m=1

Dr. Taufik Fuadi Abidin, M. (t.thn.). Struktur Data dan Algoritma. Struktur Data dan Algoritma, 10.
Diambil kembali dari file:///C:/Users/LENOVO%20E31/Downloads/binary%20search%20tree
%20(1).pdf

N, M. (t.thn.). Struktur Data Tree. Diambil kembali dari https://pt.slideshare.net/MetaPratamaN/materi-


struktur-data-tree

dari https://pt.slideshare.net/MetaPratamaN/materi-struktur-data-tree

27

Anda mungkin juga menyukai