Anda di halaman 1dari 10

MAKALAH

STRUKTUR DATA

DOSEN PEMBIMBING

Mar’atus Nur Sholehah S.sy,M.M

DISUSUN OLEH

Muhammad Alwy Apriadi


NPM : 2055202070

UNIVERSITAS NAHDLATUL ULAMA LAMPUNG


FAKULTAS SAINS DAN TEKNOLOGI
TEKNIK INFORMATIKA
2021/2022

1
KATA PENGANTAR

Alhamdulillah, pertama penulis mengucapkan rasa syukur dan segala puji kepada Allah SWT
yang telah melimpahkan segala Rahmat dan KaruniaNYA, sehingga makalah Struktur Data
ini dapat diselesaikan. Makalah Struktur Data ini diharapkan dapat mendukung mahasiswa
dalam memahami matakuliah Struktur Data. Modul ini dibuat berdasarkan sumber-sumber
yang sudah banyak digunakan. Pada makalah ini membahas mengenai konsep Struktur Data
secara umum.Akhir kata, penulis menyampaikan terimakasih yang tulus kepada pihak-pihak
yang telah memberikan bantuan dan dukungannya sehingga penulis dapat menyelesaikan
penulisan makalah ini. Pada akhir kata, penulis memohon maaf yang sebesar-besarnya jika
dalam penulisan makalah ini masih banyak kekurangan dan kelemahannya. Penulis memohon
adanya sumbangan ide, kritik dan saran untuk perbaikan penulisan makalah ini supaya lebih
baik ke depannya.

2
DAFTAR ISI

Cover .................................................................................................................... 1

Kata pengantar .................................................................................................... 2

Daftar isi ............................................................................................................... 3

Bab I pendahuluan ............................................................................................... 4

1.1 latar belakang ........................................................................................ 4

1.2 Rumusan Masalah ................................................................................. 4

1.3 Tujuan Penulisan .................................................................................. 4

Bab II Pembahasan ............................................................................................. 5

2.1 Pengertian Struktur Data ....................................................................... 5

2.2 Tipe Struktur Data................................................................................. 5

Bab III kesimpulan ..................................................................................... 9

3.1 Kesimpulan .......................................................................................... 9

Daftar Pustaka ...................................................................................................... 10

3
BAB I
PENDAHULUAN

1.1 Latar Belakang

Bagi programmer, istilah struktur data tentu bukanlah sesuatu yang asing di telinga. Bahkan
programmer tentu juga paham apa saja tipe struktur data. Ini wajar saja mengingat struktur data
itu adalah salah satu bagian penting ketika seorang programmer hendak membuat suatu
program.Contohstrukturdatadapatdilihatpadaberkas-berkaslembar-sebar(spreadsheet),pangkal-
data(database),pengolahankata,citrayangdipampat(dikompres),jugapemampatanberkasdengantekn
iktertentuyangmemanfaatkanstrukturdata. Data dapat diperoleh dari berbagai sumber, misalkan
hasil pengukuran laboratorium, hasil survei, hasil angket dan lain sebagainya. Komposisi data dan
logika dari algoritma yang memanfaatkan data tersebut berhubungan sangat erat. Data sederhana
dapat kita himpun ke dalam suatu struktur data yang memuat informasi tentang hubungan antara
item yang terdapat di dalamnya. Dalam istilah ilmu komputer, sebuah struktur data adalah cara
penyimpanan, penyusunan dan pengaturan data di dalam media penyimpanan komputer sehingga
data tersebut dapat digunakan secara efisien.

1.2 Rumusan Masalah

1. Apa yang di maksud dengan struktur data ?


2. Apa sajakah Tipe -Tipe yang ada dalam Struktur Data ?

1.3 Tujuan Penulisan

1. Untuk menambah pengetahuan kita tentang Struktur Data


2. Untuk memahami lebih dalam tentang Struktur Data dantl tipe tipe di dalam nya.

4
BAB II
PEMBAHASAN

2.1 Pengertian Struktur Data


Pengertian struktur data adalah suatu metode atau cara dalam menyusun, mengatur serta
menyimpan berbagai data yang terdapat dalam suatu penyimpanan dalam sistem komputer.
Data ini sendiri bermacam-macam, bisa berbentuk angka, simbol, huruf dan lain
sebagainya.Istilah struktur data juga berarti cara tertentu dalam menyimpan, mengatur
maupun mengorganisir data, baik itu di dalam memori komputer ataupun media
penyimpanan eksternal sehingga bisa dimanfaatkan secara efektif dan efisien. Kedua
pengertian tersebut adalah definisi struktur data jika didasarkan pada ilmu
komputer.Sementara jika didasarkan pada teknik pemrograman, struktur data mempunyai
arti yang berbeda. Yaitu tata letak data yang memuat kolom data, baik itu kolom yang bisa
dilihat pengguna maupun kolom yang cuma dipakai untuk tujuan pemrograman saja
sehingga tidak bisa dilihat oleh pengguna.

2.2 Tipe Struktur Data


Tipe struktur data, ini kurang lebih ada 6 yaitu tipe Graph, Tree, Queue, Stack, Linked List
dan Array. Penjelasan singkat keenam tipe tersebut ialah sebagai berikut.
1. Tipe Graph
Tipe Graph ini adalah tipe yang cukup sering digunakan dalam berbagai kesempatan.
Graph sendiri merupakan struktur data yang non-linear dan terdiri dari kumpulan node.
Node-node tersebut disambungkan oleh suatu garis tertentu. Garis yang dimaksud bisa
memiliki arah atau justru sebaliknya.
Contoh untuk tipe ini yang sangat mudah Anda amati ialah jalur network di sebuah
LAN, jalur telepon di suatu kota dan lain sebagainya
Berikutnya yang perlu diperhatikan dari graph adalah adjacency (node yang
dekat/berhubungan dengan node lainnya). Adjacency dapat dibuat dengan dua pendekatan,
yaitu:
 Adjacency List
unakan ketika jumlah edge nya mendekati jumlah minimum dari edge yang bisa dibuat.
 Adjacency Matrix
Digunakan ketika jumlah edge nya mendekati jumlah maksimum dari edge yang bisa
dibuat.
Pada graph terdapat dua jenis traversal, yaitu:
 DFS (Depth First Search), melakukan kunjungan ke node-node dengan cara
mengunjungi node terdalam/kebawah ,setelah itu mencari ketempat yang lainnya ,
dan sistemnya menggunakan stack
 BFS (Breadth First Search), melakukan visit ke node- node dengan cara melebar
kesamping, dan sistemnya menggunakan queue

5
2.Tipe Tree
Seperti namanya, tipe yang kedua ini bisa diibaratkan dengan akar di suatu pohon. Jadi,
tipe ini bisa dimaknai sebagai kumpulan node dan masing-masing node tersebut tersusun
dari value dan juga berbagai referensi lainnya. Nah, Tree yang terdiri atas maksimal 2 anak
akan disebut sebagai Binary Tree. Jika Anda lihat, Binary Tree mempunyai dua sub Tree
yang terletak di bagian kiri serta kanan. Ciri-cirinya adalah bagian kiri mempunyai nilai
root yang lebih kecil dibandingkan dengan bagian yang kanan. Untuk mengakses data
dalam
istilah-istilah umum dalam tree :
a) Prodecessor : node yang berada diatas node tertentu.
b) Successor : node yang berada di bawah node tertentu.
c) Ancestor : seluruh node yang terletak sebelum node tertentu dan terletak pada jalur yang
sama.
d) Descendant : seluruh node yang terletak sesudah node tertentu dan terletak pada jalur
yang sama.
e) Parent : predecssor satu level di atas suatu node.
f) Child : successor satu level di bawah suatu node.
g) Sibling : node-node yang memiliki parent yang sama dengan suatu node.
h) Subtree : bagian dari tree yang berupa suatu node beserta descendantnya dan memiliki
semua karakteristik dari tree tersebut.
i) Size : banyaknya node dalam suatu tree.
j) Height : banyaknya tingkatan/level dalam suatu tree.
k) Root : satu-satunya node khusus dalam tree yang tak punya predecssor.
l) Leaf : node-node dalam tree yang tak memiliki seccessor.
m) Degree : banyaknya child yang dimiliki suatu node.

3.Tipe Queue
Tipe struktur data yang lainnya ialah Queue. Ini adalah struktur data yang bersifat LIFO
atau Last In First Out. Dalam Queue ini juga ada 3 operasi sekaligus yang bisa Anda
lakukan yakni peek atau melihat data yang paling awal dari suatu Queue, dequeue atau
menghapus data yang pertama dari Queue dan enqueue atau memasukkan data dalam
Queue. Sama seperti stack, kelas ini juga memiliki beberapa operasi.
sebagai berikut :
 enqueue(item) menambahkan suatu item baru ke ujung saru antrian. Perlu item dan
tidak mengembalikan sesuatu.
 dequeue() menghapus item depan dari antrian. Tidak memerlukan parameter dan
mengembalikan itemnya. Antrian termodifikasi.
 peek() mengintip top item dari stack tetapi tidak menghapusnya. Tidak memerlukan
parameter dan stack tidak berubah.
4.Tipe Stack
Stack ini adalah tipe yang mirip seperti Queue. Tipe ini juga mempunyai sifat LIFO karena
termasuk struktur data yang linear. Selayaknya Queue, dalam Stack ini juga ada 3 jenis
operasi sekaligus yang bisa dilakukan. Operasi pertama ialah Peek atau memantau data
teratas Stack. Operasi kedua ialah Push atau yang bisa diartikan sebagai memasukkan suatu
data baru dalam Stack, dan operasi yang terakhir ialah Pop atau menghapus data yang
paling atas dalam Stack.

6
stack ini memiliki beberapa operasi, yaitu:
 push(item)menambahkan suatu item baru ke atas (top) dari stack. Perlu item dan tidak
mengembalikan apapun.
 pop()menghapus item teratas dari stack. Tidak perlu parameter dan mengembalikan
item. Stack berubah.
 peek()mengintip top item dari stack tetapi tidak menghapusnya. Tidak memerlukan
parameter dan stack tidak berubah.

5.Tipe Linked List

Jika diartikan secara kasar, maka Linked List berarti daftar yang terhubung. Ya, sesuai
dengan namanya, tipe satu ini memang berupa potongan-potongan aneka macam data yang
tersimpan secara acak. Berbagai potongan data tersebut akan ada dalam memori komputer
dan data yang dimaksud memiliki referensi yang saling menunjuk satu sama lain. Jadi,
sudah paham bukan kenapa tipe ini disebut sebagai Linked List? Dalam tipe satu ini, data
yang pertama biasa disebut sebagai head, sementara data yang terakhir akan disebut
sebagai tail. Jika melihat jumlah data yang diinput atau dimasukkan, Linked List memiliki
kemampuan untuk terhubung baik itu secara singly linked list ataupun doubly linked list.

Maksud dari singly linked list ialah data bisa diakses hanya dengan arah maju mulai dari
data pertama atau head ke data terakhir atau tail. Data tersebut tidak bisa diakses
sebaliknya, yakni dari tail ke head. Sementara untuk doubly linked list, data bisa diakses
dari dua arah yakni dari head ke tail atau sebaliknya, dari tail ke head. Dengan kata lain,
aksesnya bisa dibuat bolak balik.

Di dalam Linked List pun ada beberapa Operasi yang perlu diketahui yaitu:

 Insert di awal
 Insert di akhir
 Remove sebuah nilai
 Remove node pertama
 Traversing forward and reverse

7
6.Tipe Array
Selanjutnya ialah tipe Array. Ini adalah tipe yang memiliki kumpulan elemen dan elemen-
elemen tersebut jaraknya saling berdekatan dalam memori. Dalam Array ada beberapa jenis
operasi yang dipakai yaitu replace, sort, delete, insert, search dan lain sebagainya. Tipe ini
juga mempunyai dua jenis dimensi, yaitu 1 dimensi dan juga multi-dimensi.
Di dalam Array terdapat beberapa Operasi yang perlu kita ketahui, yaitu:
Insert = Data pada array dapat ditambahkan baik di awal, tengah, maupun akhir.
#untuk menambah data di akhir
Arr.append(data)
#untuk menambah data di index awal atau di tengah kita menggunakan index-nya
Arr.insert(index,data)
Search/Read = Untuk mengambil data pada array kita lakukan dengan menggunakan index
dari data tersebut.
Arr[index]
Remove = Mengapus data pada array dapat dilakukan berdasarkan index ataupun langsung
tertuju pada data apa yang akan kita hapus.
#Menghapus data berdasarkan index
del Arr[index]
Arr.pop(index)
Arr.pop() #remove data terakhir
#Remove data berdasarkan data
Arr.remove(data)

8
BAB III
KESIMPULAN

3.1 Kesimpulan
Struktur data merupakan salah satu bahan dasar pembuatan program. Pemakaian struktur data
yang tepat di dalam proses pemrograman, akan menghasilkan algoritma yang jelas dan tepat
sehingga menjadikan program secara keseluruhan lebih sederhana Array merupakan bagian
dari struktur data yaitu termasuk kedalam struktur data sederhana yang dapat di definisikan
sebagai pemesanan alokasi memory sementara pada komputer.Apabila kita membuat program
dengan data yang sudah kita ketahui batasnyamaka kita lmenggunakan Array (type data
statis), namun apabila datanya belum kita ketahui batasnya maka gunakan pointer (type data
dinamis ).

9
DAFTAR PUSTAKA
https://id.m.wikipedia.org/wiki/Struktur_data

https://qwords.com/blog/apa-itu-struktur-data/

https://www.it-jurnal.com/pengertian-struktur-data/

https://hendroagungs.blogspot.com/2015/11/struktur-data-dalam-istilah-ilmu.html?m=1

https://medium.com/@fahmiprasetiiio/struktur-data-2de34750df89

10

Anda mungkin juga menyukai