STRUKTUR
DATA
DISUSUN OLEH :
AGUS SETIAWAN (2113R0668)
KATA
PENGANTAR
Dengan
mengucapkan puji syukur Alhamdulillah kepada Allah SWT, yang telah melimpahkan
segala rahmat dan hidayah-Nya, sehingga kami dapat mengerjakan makalah tentang struktur data ini dengan baik dan lancar. Kami berharap makalah ini dapat memberikan
motivasi kepada para mahasiswa-mahasiswi untuk lebih giat mempelajarinya.
Kami juga
meminta maaf yang sebesar-besarnya apabila ada kekurangan, kesalahan bahkan
kata-kata yang tidak berkenan di hati dan disisi lain kami sangat mengharapkan
ada masukan baik kritik maupun saran dari saudara. Sehingga penyusun dapat
memperbaiki apa yang jadi kekurangan kami karena tidak ada manusia yang
sempurna kecuali Allah SWT.
DAFTAR ISI
Kata Pengantar.............................................................................................. i
Daftarisi......................................................................................................... ii
BAB I PENDAHULUAN
1.1 Tujuan.......................................................................................... 1
1.2 Manfaat........................................................................................ 1
BAB II PEMBAHASAN
A. Pengertian Struktur Data................................................................ 1
B. Pembuatan Struktur Data............................................................... 3
C. Array................................................................................................. 4
2.1Pengertian Array............................................................................ 4
2.2 Karakteristik Array...................................................................... 4
2.3 Deklarasi Array............................................................................ 4
2.4 Jenis Array................................................................................... 4
BAB III KESIMPULAN
3.1 Kesimpulan.................................................................................. 6
BAB I
PENDAHULUAN
1.1
Tujuan
a. Untuk memenuhi tugas dari dosen pada pada kuliah Struktur Data
a. Untuk memenuhi tugas dari dosen pada pada kuliah Struktur Data
1.2
Manfaat
a. Supaya kita mengerti atau mengetahui apa yang di maksud dengan Array dan beberapa contoh programnya, sehinnga kita dapat menjalankan programnya dengan baik dan benar.
b. Supaya kita mengerti atau mengetahui apa yang di maksud dengan Struktur dan beberapa contoh programnya, sehinnga kita dapat menjalankan programnya dengan baik dan benar.
c. Supaya kita mengerti atau mengetahui apa yang di maksud dengan Linked List dan beberapa contoh programnya, sehinnga kita dapat menjalankan programnya dengan baik dan benar.
a. Supaya kita mengerti atau mengetahui apa yang di maksud dengan Array dan beberapa contoh programnya, sehinnga kita dapat menjalankan programnya dengan baik dan benar.
b. Supaya kita mengerti atau mengetahui apa yang di maksud dengan Struktur dan beberapa contoh programnya, sehinnga kita dapat menjalankan programnya dengan baik dan benar.
c. Supaya kita mengerti atau mengetahui apa yang di maksud dengan Linked List dan beberapa contoh programnya, sehinnga kita dapat menjalankan programnya dengan baik dan benar.
BAB II
PEMBAHASAN
A.
PENGERTIAN STRUKTUR DATA
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.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 simbol.
Konstanta digunakan untuk menyatakan nilai tetap sedangkan
variable digunakan dalam program untuk menyatakan nilai yang dapat berubah-ubah
selang eksekusi berlangsung.
Ada
empat istilah data, yaitu:
1. Tipe data adalah jenis atau macam
data di dalam suatu variable dalam bahasa pemrograman.
2. Objek data mengacu kumpulan elemen,
D (domain).
3. Representasi data : Suatu mapping
dari struktur data ‘d’ ke suatu set ke struktur data ‘e’ (d===e) misal bolean
di representasikan dalam 0 dan 1.
4. Struktur data biasa dipakai untuk
mengelompokan beberapa informasi yang
terkait menjadi sebuah kesatuan.
Dalam
teknik pemrograman, struktur data berarti tata letak data yang berisi
kolom-kolom data, baik itu kolom yang tampak oleh pengguna (user) atau
pun kolom yang hanya digunakan untuk keperluan pemrograman yang tidak tampak
oleh pengguna.Setiap baris dari kumpulan kolom-kolom tersebut dinamakan
catatan (record). Lebar kolom untuk data dapat berubah dan bervariasi.
Ada kolom yang lebarnya berubah secara dinamis sesuai masukan dari pengguna,
dan juga ada kolom yang lebarnya tetap. Dengan sifatnya ini, sebuah struktur
data dapat diterapkan untuk pengolahan database (misalnya untuk keperluan data
keuangan) atau untuk pengolah kata (word processor) yang kolomnya
berubah secara dinamis. Contoh struktur data dapat dilihat pada berkas-berkas
lembar-sebar (spreadsheet), pangkal-data (database), pengolahan
kata, citra yang dipampat (dikompres), juga pemampatan berkas dengan teknik
tertentu yang memanfaatkan struktur data.
Secara garis besar type data dapat
dikategorikan menjadi:
Type data sederhana.
Type data sederhana.
Struktur Data, meliputi:
a)
Linier : Stack,
Queue, sertaList dan Multilist
b)
Non Linier :
Pohon Biner dan Graph
Pemakaian struktur data yang
tepat didalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga
menjadikan program secara keseluruhan lebih efisien dan
sederhana.
Struktur data yang standar yang biasanya digunakan dibidang informatika adalah:
Struktur data yang standar yang biasanya digunakan dibidang informatika adalah:
Ø List linier (Linked
List) dan variasinya
Ø Multilist
Ø Stack (Tumpukan)
Ø Queue (Antrian)
Ø Tree ( Pohon)
Ø Graph ( Graf )
B.
PEMBUATAN STRUKTUR DATA
Untuk membuat menjadi struktur data,
kita harus melakukan dulu aktivitas terhadap objek data, yaitu :
v Mendeskkripsikan kumpulan operasi
sah yang diterapkan ke elemen-elemen objek data.
v Menunjukan mekanisme kerja
operasi-operasi.
Objek data integer ditambah operasi
(+ , - , * , / , mod ,cell , floor , < , >) dan operasi-operasi lain yang
memanipuasi objek data integer menyatakan struktur data.
Struktur data = Objek data + { Operasi manipulasi }.
Tahap pembuatan struktur data adalah :
Ø Tahap pertama : Spesifikasi
Pendeskripsian / spesifikasi struktur data menyatakan apa
yang dapat dilakukan struktur data, bukan cara penerapannya.
Spesifikasi dapat dilakukan dengan
dua cara, yaitu :
·
Spesifikasi
secara formal
·
Spesifikasi
secara informal
Ø Tahap kedua : Implementasi
Implementasi menyatakan cara penerapan struktur data dengan
struktur data yang telah ada.Implementasi struktur data adalah proses
pendefinisian tipe data abstrak sehingga semua operasi dapat dieksekusi
computer. Implementasi struktur penyinpanan item-item data serta
algoritma-algoritma untuk implementasi operasi-operasi sehingga menjamin
terpenuhinya karakteristik struktur data, relasi item-item data atau invariant
pada struktur data itu.
Ø Tahap ketiga : Pemrograman
Pemrograman terstruktur adalah penerjemahan menjadi
pernyataan di bahasa pemrograman tertentu. Prosesnya terdiri dari :
·
Deklarasi
yang mendefinisikan objek-objek data dan hubungannya…
·
Pembuatan
prosedur / rutin untuk operasi-operasi dasar yang menjaga invariant pada
struktur data itu .
Sesuai dengan relasi yang
didefinisikan di spesifikasi perancangan harus memilih tipe-tipe data yang
telah ada untuk merepresentasikan struktur data.
Struktur data di bangun menggunakan
fasilitas pembentukan atau pembuatan struktur data yang disediakan bahasa
seperti array, record, dan sebagainya atau yang telah di buat seperti stack,
queue, atau himpunan menggunakan linked list.
Pembuatan struktur data adalah pembentukan tipe data lengkap
yang mempunyai empat property berikut :
1. Nama : Identifier tipe data
2. Domain : Domain / himpunan semesta nilai di tipe
data
3. Konstanta
(penyebutan anggota-anggotanya) : Cara penyebutan anggota-anggota tipe data
4. Operasi-operasi
terhadap tipe data itu (operator) :
Daftar operasi terhadap anggota tipe data sehingga kelakuan objek data sesuai
spesifikasi.
ARRAY
1. PENGERTIAN
Array atau larik di definisikan
sebagai pemesanan alokasi memory berurutan.definisi ini kurang tepat, karena
terjadi kerancuan antara struktur data dan representasinya. Memang benar array
hampir selalu di implementasikan menggunakan memory berurutan tapi tidak selalu
demikian.
Semua
elemem array bertipe sama. Array cocok untuk organisasi kumpulan data homogen
yang ukuran atau jumlah elemen maksimumnya telah diketahui dari awal.
Homogen
adalah bahwa setiap elemen dari sebuah array tertentu haruslah mempunyai tipe
data yang sama.
2. KARAKTERISTIK ARRAY
Mepunyai batasan dari pemesanan alokasi memori (bersifat
statis)
Mempunyai tipe data sama (bersifat homogen)
Dapat diakses secara acak.
2.1. DEKLARASI ARRAY
Ada
tiga hal yang harus di ketahui dalam mendeklarasikan array, yaitu :
Type data array
Nama variable array
Subkrip / index array.
Contoh
deklarasi dari array adalah sebagai berikut :
int
A[5] ; artinya variabel A adalah kumpulan data sebanyak 5 bilangan bertipe
integer.
2.2. JENIS ARRAY
1.ARRAY DIMENSI SATU
Deklarasi : Type_Data Nama_Variabel [index]
Rumus
untuk menentukan jumlah elemen dalam array adalah :
|
n
p(Index
Array)
i = 1
|
p
= Perkalian dari index sebelumnya (untuk arraybdimensi dua dan tiga).
PEMETAAN
(MAPPING) ARRAY DIMENSI SATU KE STORAGE
Rumus :
@A[i] = B + (i – 1) * L
Dimana :
@A[i] : Posisi array yang dicari
B :
Posisi awal index di memori computer
i :
Subkrip atau index array yang di cari
L :
Ukuran atau besar memori suatu tipe data
2.
Array Dimensi Dua
Deklarasi : Type_Data Nama_Variabel [index1] [index2]
|
n
p(Index Array)
i = 1
|
Menentukan
jumlah elemen dalam array dimensi dua :
p = Perkalian dari statemen
sebelumnya
Pemetaan (Mapping) Array Dimensi Dua
Ke Storage
Terbagi dua cara pandang
(representasi) yang berbeda :
·
Secara kolom per kolom (coloumn
major order / CMO)
|
@M[i][j]
= M[0][0] + {(j – 1) * K + (i – 1)} * L
|
·
Secara baris per baris (row major
order / RMO)
|
@M[i][j]
= M[0][0] + {(i – 1) * N + (j – 1)} * L
|
Keterangan :
@M[i][j] = Posisi array yang di
cari, M[0][0 = Posisi alamat awal index array, i = Baris, j = Kolom, L = Ukuran
memory type data, K = Banyaknya elemen per kolom, N = Banyaknya elemen per
baris.
3.
Array Dimensi Tiga
Deklarasi : type_Data Nama_Variabel
[index1][index2][index3]
|
n
p(Index Array)
i = 1
|
Menentukan jumlah elemen dalam array
dimensi tiga :
p = Perkalian dari statemen
sebelumnya
Pemetaan
(Mapping) Array Dimensi Tiga Ke Storage
|
Rumus : @M[n][m][p] = M[0][0][0] + {((n – 1)
*(index1)) + ((m – 1) * (index2))+
((p – 1) * (index3)} * L
|
TRIANGULAR ARRAY (ARRAY SEGI TIGA)
Triangular array dapat merupakan
Upper Triangular (seluruh elemen di bawah diagonal utama = 0), ataupun Lower
Triangular (seluruh elemen di atas diagonal utama = 0).
|
N
∑ I = N (N+1)/2
I
= 1
|
Dalam array Lower Triangular dengan
N baris, jumlah maksimum elemen <> 0, tidak lebih dari
SPERSE ARRAY (ARRAY JARANG)
Suatu array yang sangat banyak
elemen nol-nya.
BAB III
PENUTUP
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
Tidak ada komentar:
Posting Komentar