Anda di halaman 1dari 10

MAKALAH STRUKTUR DATA

DIAJUKAN UNTUK MEMENUHI SEBAGIAN TUGAS DALAM MATA KULIAH


STRUKTUR DATA
DOSEN PENGAMPU:

Sudriyanto, M. Kom.

DisusunOleh:
1. Arie Wahyudi (16010181) Kelas G
2. Zidni Ilman (16010171) Kelas G
3. Daniel Fitrotir R. (16010183)Kelas G

PRODI TEHNIK INFORMATIKA ( TI )


SEKOLAH TINGGI TEKNOLOGI NURUL JADID
PAITON PROBBOLINGGO
2017
KATA PENGANTAR

Assalammualaikum Wr.Wb

Segala puji dan syukur penulis panjatkan kehadirat Allah Swt, Tuhan
pencipta alam semesta. Atas berkat rahmat serta hidayah-Nya, pada
akhirnya penulis dapat menyelesaikan dan menyusun Makalah Struktur Data
ini.
Makalah ini dibuat dan diajukan untuk memenuhi salah satu tugas
pada mata kuliah Struktur Data. Walaupun banyak kesulitan dan hambatan
dalam menyelesaikan makalah ini, alhamdulillah atas kehendak-Nya makalah
ini dapat diselesaikan. Penyusun telah berusaha menyusun makalah ini sebaik
mungkin. Akan tetapi penyusun menyadari, tak ada gading yang tak retak,
begitu pula dengan makalah ini masih belum sempurna. Oleh karena itu,
semua kritik dan saran demi perbaikan makalah ini akan penyusun sambut
dengan senang hati.
Wassalammualaikum Wr. Wb

Probolinggo, 2 Agusutus 2017

Penyusun
DAFTAR ISI

KATA PENGANTAR .................................................................................................................................... 1

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

BAB I PENDAHULUAN ............................................................................................................................... 4

1. LATAR BELAKANG........................................................................................................................... 4

2. RUMUSAN MASALAH ..................................................................................................................... 4

BAB II PEMABHASAN ................................................................................................................................. 5

1. PENGERTIAN STRUKTUR DATA ...................................................................................................... 5

2. ARSITEKTUR STRUKTUR DATA PADA JAVA ................................................................................. 5

3. ARRAY ............................................................................................................................................... 6

4. STACK ................................................................................................................................................ 7

5. QUEUE ............................................................................................................................................... 7

6. TREE .................................................................................................................................................... 7

7. PENGURUTAN (SORTING) ............................................................................................................. 8


BAB I

PENDAHULUAN
1. LATAR BELAKANG

Secara umum suatu struktur data terdiri dari beberapa bagian seperti
himpunan nilai-nilai data dan sejumlah operasi dasar yang bekerja pada data
tersebut menurut suatu algortima tertentu. Sebagai contoh bila nilai data yang
dibicarakan adalah bagian dari himpunan bilangan riil, maka operasi-operasi
yang dapat dilakukan pada himpunan tersebut hanya operasi tambah,
kurang, bagi dan kali, sedangkan algoritma yang diterapkan pada himpunan
data tersebut mungkin merupakan algoritma untuk mencari nilai maksimum
atau minimum dari data yang data.
Dalam penerapannya seorang pengguna komputer hanya akan
menggunakan fungsi-fungsi dasar yang ada tanpa memperhatikan secara
terperinci algoritma yang digunakan maupun struktur dari tempat
penyimpanan dimana data tersebut disimpan. Untuk itu dibuatlah suatu model
yang dapat menyelesaikan suatu persoalan yang ada.
Seperti yang telah diketahui sebelumnya bahwa sebuah ungkapan aritmatika
yang biasa kita gunakan dibangku sekolah disebut dengan notasi infix (contoh
: A = C + D / B * C) sehingga kalkulator sederhanapun juga menggunakan
notasi ini. Jika ekspresi yang digunakan oleh manusia akan digunakan oleh
komputer, ekspresi tersebut harus diubah menjadi bentuk polish
notation, dimana polish notation ini berhubungan dengan penanganan
konversi secara simbolik ekspresi suffix pada machine code. Dengan notasi
infix, komputer akan sukar mengevaluasi ungkapan tersebut.
Disini dibuat suatu konsep yang sangat berguna didalam ilmu komputer untuk
menulis ungkapan dengan menggunakan notasi tertentu melalui salah satu
pemanfaatan tumpukan (stack).
2. RUMUSAN MASALAH
a. Menjelaskan Sturktur Data dan Arsitektur pada JAVA
b. Menjelaskan Array, Stack, Queue, Tree, Sorting
BAB II
PEMABHASAN

1. PENGERTIAN STRUKTUR DATA


Struktur data adalah cara menyimpan atau merepresentasikan data di dalam
komputer agar bisa di pakai secara efisien. Sedangkan data dapat dijabarkan
sebagai representasi dari fakta yang nyata. Fakta atau keterangan tentang
kenyataan yang disimpan, direkam atau disajikan dalam bentuk tulisan, suara,
gambar, sinyal atau simbol. Pemakaian struktur data yang tepat di dalam proses
pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat,
sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana.
Dalam pengertian lain, Struktur data dapat disebut juga sebagai suatu kumpulan
objek- objek data yang memiliki aturanya yang kemudian digolongkan
berdasarkan operasi-operasi untuk memanipulasikannya. Contoh objek data
terstruktur adalah Array(larik), Record(catatan), Stack (tumpukan),
Queue(antrian), Tree(pohon), Dll.

2. ARSITEKTUR STRUKTUR DATA PADA JAVA


Dalam mempelajari bahasa pemrograman, kita tidak akan lepas dari yang
namanya Struktur Data. Baik itu dalam Bahasa C, C++, Pascal, termasuk Java.
Dalam ilmu komputer, Struktur data adalah langkah dimana kita harus
menyimpan, menyusun dan mengatur data di dalam sebuah media
penyimpanan komputer sehingga data yang akan digunakan efisien dan tidak
terbuang sia sia. Oleh karena itu mengingat pembelajaran mengenai Java
dimana menekankan pada OOP (Object Oriented Programing), kita harus
memperhatikan struktur dari data yang digunakan agar menghasilkan sebuah
program yang ringan dan mudah digunakan. Struktur Data pada Java hampir
sama dengan bahasa pemrograman yang lainnya, yaitu tentang tipe data.
Object-oriented programming (OOP) merupakan jenis pemrograman yang
menggunakan Object yaitu instance dari kelas yang terdiri dari Data Field dan
metode bersama dengan interaksi mereka untuk merancang aplikasi dan
program komputer. Teknik pemrograman dapat mencakup fitur seperti data
abstraksi, enkapsulasi, pesan, modularitas, polimorfisme, dan pewarisan. Banyak
bahasa pemrograman modern sekarang mendukung OOP.
3. ARRAY
Array adalah sekumpulan variabel yang memiliki tipe data yang sama
dan dinyatakan dengan nama yang sama. Array merupakan konsep
yang penting dalam pemrograman, karna array memungkinkan untuk
menyimpan data maupun referensi objek dalam jumlah banyak dan
terindeks. Array menggunakan indeks integer untuk menentukan urutan
elemen-elemennya, dimana elemen pertamanya dimulai dari indeks
0,elemen kedua memiliki indeks 1, dan seterusnya.
a. Array 1 Dimensi
Array adalah struktur data yang menyimpan tipe data yang sama. Yang
dimaksud tipe data yang sama jika isi variabel bernilai integer, maka semua
datanya bernilai integer, jika variabel bernilai string, maka semua datanya
bernilai bernilai String.
Deklarasi array (larik):
Untuk mendeklarasikan array :

1)tulis tipe datanya,
2)diikuti dengan tanda kurung [],
3)serta diikuti oleh nama identifier.
Mendeklarasikan variable Array
Bentuk Deklarasi
tipeData [ ] namaVariable;
contoh:
String [] kota;
int [] nomor;
Menciptakan Objek Array :
Setelah mendeklarasikan Array, maka perlu dibuat arraynya terlebih dahulu,
sebelum array itu digunakan, caranya dengan perintah new
Menciptakan Objek Array
Bentuk Deklarasi
namaVariable = new tipeData [jumlahEleman];
Contoh:
kota = new String [7];
nomor = new int [8];
b.Larik (Array) 2 Dimensi
Merupakan sebuah variabel yang menyimpan sekumpulan data yang
memiliki tipe sama dan elemen yang akan diakses melalui 2 indeks yaitu
indeks baris dan indeks kolom. Bentuk pendeklarasian array multi dimensi
hampir sama dengan larik satu dimensi.
4. STACK
Tumpukan atau stack adalah salah satu str uktur data yang memiliki sistem kerja
terakhir masuk pertama keluar (LIFO = Last in First Out). Dapat di ilustrasikan
seperti sebuah tumpukan buku, ketika mengambil sebuah buku di dalam
tumpukan itu maka harus diambil satu persatu dari buku yang paling atas dari
tumpukan buku tersebut. Sebuah stack hanya dapat ditambahkan dan
dikurangi elemennya hanya dari satu sisi yakni elemen atasnya atau biasa
disebut Top Of Stack.
Operasi Pada Stack
1. Operasi push pada stack adalah operasi menambahkan elemen baru pada
sebuah stack. Penambahan elemen pada stack juga memiliki aturan.
2. Operasi pop pada stack adalah operasi mengambil sebuah elemen dari
sebuah stack. Auran mengambil sebuah elemen dari sebuah stack.
Operasi-operasi dasar
1. push : menambahkan data pada stack
2. pop : mengambil data pada stack
3. isEmpty : mengecek apakah stack masih kosong
4. isFull : mengecek apakah stack sudah penuh
5. peek : melihat data yang paling atas
6. clear : mengosongkan stack
5. QUEUE
Antrian atau queue adalah salah satu struktur data yang memiliki sistem kerja
pertama masuk maka akan menjadi yang pertma keluar (FIFO = First In Frist Out).
Operasi yang dapat dilakukan pada antrian atau queue adalah memaasukkan
elemen dari sisi bagian belakang queue dan mengeluarkan elemen dari sisi
depan queue.
Operasi-operasi dasar:
1. enQueueu : menambahkan data pada queue
2. deQueueu : mengambil data pada queue
3. isEmpty : mengecek apakah queue masih kosong
4. isFull : mengecek apakah queue sudah penuh
5. clear : menghapus isi elemen queue

6. TREE
Pohon atau tree adalah salah satu bentuk struktur data yang terdiri dari akar dan
simpul-simpul yang berada di bawah akar. Ilustrasi struktur data pohon.
Pohon biner atau binary tree adalah pohon yang setiap simpuulnya
memiliki simpul turunan atau sub pohon maksimal dua yang disebut sub
pohon kiri (left subtree) dan sub pohon kanan (right subtree). Operasi yang
dapat dilakukan pada pohon biner antara lain kunjungan terhadap simpul-
simpulnya. Jenis-jenis kunjungan pada pohon biner antara lain preorder,
inorder, postorder, dan levelorder.
1. PreOrder
Kunjungan preorder merupakan kunjungan pada pohon biner yang
dimulai dari akar kemudian ke subpohon kiri selanjutnya dikunjungi
subpohon kanan.
2. InOrder
Kunjungan inorder merupakan kunjungan pada pohon biner yang
dimulai dari simpul-simpul turunan subpohon kiri, akar, baru kemudian
simpul-simpul turunan pada subpohon kanan.
3. PostOrder
Kunjungan postorder merupakan kunjungan pada pohon biner yang
dimulai dari simpul-simpul turunan subpohon kiri, baru kemudian simpul-
simpul turunan pada subpohon kanan, kemudian akar.
4. LevelOrder
Kunjungan levelorder merupakan kunjungan pada pohon biner yang
dimulai dari simpul pada tingkat 1 kemudian simpul pada tingkat 2 dan
seterusnya dimulai dari simpul paling kiri ke kanan.
7. PENGURUTAN (SORTING)
Perngurutan data atau sorting merupakan hal yang penting dalam kehidupan
nyata untuk memudahkan pengolahan data. Pengurutan dapat dilakukan
dengan urutan menaik(ascending) atau dengan urutan menurun (descending).
Pengurutan memiliki eberapa metode :
1. Metode Seleksi (Selection Sort)
Metode pengurutan yang mencari nilai terkecil.


2. Metode Gelembung (Bubble Sort)
Metode pengurutan yang menukarkan dua buah elemen secara terus
menerus sampai pengurutan selesai.

.
3. Metode Penyisipan (Insertion Sort)
Metode pengurutan yang mengambil sebuah data sisip pada data yang
diurutkan dan menggeser data yang lebih besar dari data sisip.

Anda mungkin juga menyukai