OLEH :
AGNES PATRICIA
(202052006)
KELAS : SK B
SISTEM KOMPUTER
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
STMIK BINA BANGSA KENDARI
T.A 2021
DAFTAR ISI
Table of Contents
DAFTAR ISI.........................................................................................................................................2
KATA PENGANTAR...........................................................................................................................3
RUMUSAN MASALAH.......................................................................................................................4
TUJUAN PENULISAN........................................................................................................................4
BAB 1....................................................................................................................................................5
PENDAHULUAN.................................................................................................................................5
LATAR BELAKANG.......................................................................................................................5
BAB II...................................................................................................................................................6
PEMBAHASAN...................................................................................................................................6
A. PENGERTIAN ALGORITMA..................................................................................................6
1. Notasi Algoritma...................................................................................................................6
2. Aturan pseudo code...............................................................................................................6
3. Operator aritmatik..................................................................................................................6
4. Type data...............................................................................................................................7
5. Ciri CiriAlgoritma.................................................................................................................7
B. PENGERTIAN STRUKTUR DATA.........................................................................................7
C. HUBUNGAN STRUKTUR DATA DAN ALGORITMA.......................................................10
BAB III................................................................................................................................................11
PENUTUP...........................................................................................................................................11
KESIMPULAN...............................................................................................................................11
KATA PENGANTAR
Puji syukur kehadirat Tuhan Yang Maha kuasa karena telah memberikan kesempatan
dan kesehatan untuk menyelesaikan makalah ini. Atas rahmat dan hidayah-Nya lah kami
dapat menyelesaikan makalah yang berjudul “Keterkaitan Algoritma dan Struktur Data”
tepat waktu.Makalah ini, disusun guna memenuhi tugas pada mata kuliah “Algoritma dan
Struktur Data”. Selain itu, kami juga berharap agar makalah ini dapat menambah wawasan
bagi pembaca
Kami menyadari makalah ini masih jauh dari kata sempurna. Oleh karena itu, kritik
dan saran yang membangun akan penulis terima demi kesempurnaan makalah ini.
RUMUSAN MASALAH
1. Jelaskan yang dimaksud dengan algoritma
2. Jelaskan yang dimaksud dengan struktur data
3. Apa keterkaitan algoritma dan struktur data
TUJUAN PENULISAN
1. Dapat mendefinisikan algoritma
2. Mampu untuk menuraikan maksud dari struktur data
3. Menjelaskan hubungan antara algoritma dan struktur data
BAB 1
PENDAHULUAN
LATAR BELAKANG
Sejarah Algoritma ditinjau dari asal usul katanya kata Algoritma sendiri mempunyai
sejarah yang aneh. Orang hanya menemukan kata Algorism yang berarti proses menghitung
dengan angka arab. Anda dikatakan Algorist jika anda menghitung menggunakan angka arab.
Para ahli bahasa berusaha menemukan asal kata ini namun hasilnya kurang memuaskan.
Akhirnya para ahli sejarah matematika menemukan asal kata tersebut yang berasal dari nama
seorang ahli matematika dari Uzbekistan Abu Abdullah Muhammad Ibnu Musa Al
Khuwarizmi.
Al Khuwarizmi dibaca orang barat menjadi Algorism. Al Khuwarizmi menulis buku
yang berjudul Kitab Al Jabar Wal Muqabala yang artinya buku pemugaran dan pengurangan
(The book ofrest oration and reduction). Dari judul buku itu kita juga memperoleh akar kata
Aljabar (Algebra). Sejarah Algoritma perubahan kata dari Algorism menjadi Algorithm
muncul karena kata Algorism sering dikelirukan dengan Arithmetic, sehingga akhiran sm
berubah menjadi thm. Karena perhitungan dengan angka Arab sudah menjadi hal yang biasa.
Maka lambat laun kata Algorithm berangsur angsur dipakai sebagai metode perhitungan
(komputasi) secara umum, sehingga kehilangan makna kata aslinya. Dalam Bahasa
Indonesia, kata Algorithm diserap menjadi Algoritma.
Definisi Algoritma Kita bisa mendefinisikan algoritma sebagai berikut: Algoritma
adalah logika, metode dan tahapan (urutan) sistematis yang digunakan untuk memecahkan
suatu permasalahan. Dan kamus besar bahasa Indonesia (Balai Pustaka 1988) secara formal
mendefinisikan algoritma sebagai berikut: Algoritma adalah urutan logis pengambilan
putusan untuk pemecahan masalah.
BAB II
PEMBAHASAN
A. PENGERTIAN ALGORITMA
Algoritma adalah sederetan langkah-langkah logis yang disusun secara sistematis untuk
memecahkan suatu masalah. Disebut Logis karena setiap langkah bisa diketahui dengan pasti.
Algoritma lebih merupakan alur pemikiran untuk menyelesaikan suatu pekerjaan atau suatu
masalah.
Belajar Memprogram dan Belajar Bahasa Pemrograman Belajar memprogram adalah
belajar tentang metodologi pemecahan masalah, kemudian menuangkannya dalam suatu
notasi tertentu yang mudah dibaca dan dipahami. Belajar bahasa pemrograman adalah belajar
memakai suatu bahasa, aturan tata bahasanya, instruksi-instruksinya, tata cara pengoperasian
compiler-nya untuk membuat program yang ditulis dalam bahasa itu saja.
1. Notasi Algoritma
Penulisan algoritma tidak tergantung dari spesifikasi bahasa pemrograman dan komputer
yang mengeksekusinya. Notasi algoritma bukan notasi bahasa pemrograman tetapi dapat
diterjemahkan ke dalam berbagai bahasa pemrograman.
5. Ciri CiriAlgoritma
a. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.
b. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas).
c. Algoritma memiliki nol atau lebih masukkan.
d. Algoritma memiliki satu atau lebih keluaran.
e. Algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan
dalam waktu yang masuk akal).
2. Double Link
Double Link List adalah elemen-elemen yang dihubungkan dengan dua pointer dalam
satu elemen dan list dapat melintas baik di depan atau belakang.
Elemen double link list terdiri dari tiga bagian:
Bagian data informasi
Pointer next yang menunjuk ke elemen berikutnya
Pointer prev yang menunjuk ke elemen sebelumnya
Untuk menunjuk head dari double link list, pointer prev dari elemen pertama menunjuk
NULL. Sedangkan untuk menunjuk tail, pointer next dari elemen terakhir menunjuk NULL.
3. Stack
Stack atau tumpukan merupakan sebuah koleksi objek yang menggunakan prinsip
LIFO (Last In First Out), yaitu data yang terakhir kali dimasukkan akan pertama kali keluar
dari tumpukan tersebut. Tumpukan dapat diimplementasikan sebagai representasi berkait atau
kontigu (dengan tabel fix).
Ciri tumpukan:
TOP merupakan sebutan untuk elemen paling atas dari suatu stack
Elemen TOP merupakan elemen yang paling akhir ditambahkan
Elemen TOP diketahui
Penambahan dan penghapusan elemen selalu dilakukan di TOP
LIFO
Pemanfaatan tumpukan:
Perhitungan ekspresi aritmatika (posfix)
Algoritma backtraking (runut balik)
Algoritma rekursif
4. Queue
Queue merupakan kumpulan atau antrian data/benda dimana data/benda yang
diproses pertama merupakan data/benda yang masuk pertama ke dalam antrian.Queue
merupakan perintah pengumpulan data yang disebut FIRST IN FIRST OUT (FIFO).
Misalnya Queue Q= (a1,a2,a3…,an), maka
Elemen a1 adalah elemen paling depan
Elemen ai adalah diatas elemen ai-1, di mana 1<i<n.
Elemen an adalah elemen paling belakang
5. Tree
Tree adalah suatu struktur data yang digunakan secara luas yang menyerupai struktur
pohon dengan sejumlah simpul yang terhubung.Sebuah Simpul dapat mengandung sebuah
nilai atau suatu kondisi atau menggambarkan sebuah struktur data terpisah atau sebuah
bagian pohon itu sendiri. Setiap simpul dalam sebuah pohon memiliki nol atau lebih simpul
anak (child nodes), yang berada dibawahnya dalam pohon (menurut perjanjian, pohon
berkembang ke bawah, tidak seperti yang dilakukannya di alam).
Sebuah simpul yang memiliki anak dinamakan simpul ayah (parent node) atau simpul
leluhur (ancestor node) atau superior. Sebuah simpul paling banyak memiliki satu ayah.
Tinggi dari pohon adalah panjang maksimal jalan ke sebuah daun dari simpul tersebut. Tinggi
dari akar adalah tinggi dari pohon. Kedalaman dari sebuah simpul adalah panjang jalan ke
akarnya dari simpul tersebut.
6. Searching
Searching pada suatu data seringkali dibutuhkan pembacaan kembali informasi
(retrieval information) dengan cara searching. Searching adalah pencarian data dengan cara
menelusuri data-data tersebut. Tempat pencarian data dapat berupa array dalam
memori(pencarian internal), bisa juga pada file pada external storage(pencarian external).
Ada dua macam teknik pencarian yaitu pencarian sekuensial dan pencarian biner. Perbedaan
dari dua teknik ini terletak pada keadaan data. Pencarian sekuensial digunakan apabila data
dalam keadaan acak atau tidak terurut (contoh: sequential search). Sebaliknya, pencarian
biner digunakan pada data yang sudah dalam keadaan urut (contoh: Binary serach dan
interpolation search). Pada Kesempatan ini kita hanya akan membahas tentang pencarian
internal menggunakan Array dinamis (pointer).
7. Sorting
Sorting adalah proses menyusun elemen – elemen dengan tata urut tertentu dan proses
tersebut terimplementasi dalam bermacam aplikasi. Kita ambil contoh pada aplikasi
perbankan. Aplikasi tersebut mampu menampilkan daftar account yang aktif. Hampir seluruh
pengguna pada sistem akan memilih tampilan daftar berurutan secara ascending demi
kenyamanan dalam penelusuran data.
Beberapa macam algoritma sorting telah dibuat karena proses tersebut sangat
mendasar dan sering digunakan. Oleh karena itu, pemahaman atas algoritma – algoritma yang
ada sangatlah berguna.
8. Graph
Graph adalah sekelompok simpul-simpul (nodes/vertices) V, dan sekelompok sisi
(edges) E yang menghubungkan sepasang simpul. Bayangkan simpul-simpul tersebut sebagai
lokasi-lokasi, maka himpunan dari simpul-simpul tersebut adalah himpunan lokasi-lokasi
yang ada. Dengan analogi ini, maka sisi merepresentasikan jalan yang menghubungkan
pasangan lokasi-lokasi tersebut.
Algoritma adalah sederetan langkah-langkah logis yang disusun secara sistematis untuk
memecahkan suatu masalah. Disebut Logis karena setiap langkah bisa diketahui dengan pasti.
Algoritma lebih merupakan alur pemikiran untuk menyelesaikan suatu pekerjaan atau suatu
masalah. Struktur data adalah cara menyimpan atau merepresentasikan data di dalam
komputer agar bisa dipakai secara efisien Sedangkan data adalah representasi dari fakta dunia
nyata. Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau
direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau symbol.
Bagaimanapun juga struktur data dan algoritma berhubungan sangat erat pada
sebuah program. Algoritma yang baik tanpa pemilihan struktur data yang tepat akan
membuat program menjadi kurang baik, semikian juga sebaliknya