Upload
independent
View
0
Download
0
Embed Size (px)
Citation preview
LAPORAN PRAKTIKUM V
STRUKTUR DATA
STACK (TUMPUKAN)
Disusun Oleh:
Rahmad Hariono
12330031
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNIK
UNIVERSITAS JANABADRA
YOGYAKARTA
2014
DAFTAR ISI
HALAMAN JUDUL
DAFTAR ISI
BAB I PENDAHULUAN
1.1..........................................................Per
siapan
- Perangkat Keras.........................................1
- Perangkat Lunak.........................................1
1.2..........................................................Das
ar Teori..................................................1
BAB II PELAKSANAAN PRAKTIKUM
Coding Program Stack dengan Array............................3
BAB III JAWABAN TUGAS
Coding Program Stack dengan Linked List......................5
BAB IV PENUTUP
4.1.Kesimpulan...............................................7
4.2.Saran....................................................7
DAFTAR PUSTAKA
BAB I
PENDAHULUAN
1.1. Persiapan
Perangkat Keras
Seperangkat PC
Perangkat Lunak
Netbeans IDE
1.2. Dasar Teori
Stack adalah suatu tumpukan dari benda. Konsep utamanya adalah
LIFO (Last In First Out), benda yang terakhir masuk dalam stack
akan menjadi benda pertama yang dikeluarkan dari stack.
Stack dengan Array
Sesuai dengan sifat stack, pengambilan/penghapusan elemen dalam
stack harus dimulai dengan elemen teratas.
Operasi-operasi pada Stack dengan Array
Konstruktor
Fungsi ini membuat sebuah stack baru yang masih kosong.
Konsepnya adalah bahwa Top menunjukkan elemen stack teratas.
Jika Top bernilai -1 berarti tumpukan kosong.
IsFull
Fungsi ini memeriksa apakah stack yang ada sudah penuh. Stack
penuh jika puncak stack terdapat tepat dibawah jumlah maksimum
yang dapat ditampung stack atau dengan kata lain Top =
MAX_STACK -1.
Push
Fungsi ini menambahkan sebuah elemen ke dalam stack dan tidak
bisa dilakukan lagi jika stack sudah penuh.
IsEmpty
Fungsi ini menentukan apakah stack kosong atau tidak. Tanda
bahwa stack kosong adalah Top bernilai kurang dari nol.
Pop
Fungsi ini mengambil elemen teratas dari stack dengan syarat-
syarat tidak boleh kosong
Clear
Fungsi ini mengosongkan stack dengan cara mengeset Top dengan -
1. Jika Top bernilai kurang dari nol maka stack dianggap
kosong.
Stack dengan Single Linked List
Selain dengan array , stack dapat diimplementasikan dengan
Linked List. Keunggulannya dibandingkan dengan arra tentu saja
adalah penggunaan alokasi memory yang dinamis sehingga
menghindari pemborosan memory. Misalnya saja pada stack dengan
array disediakan tempat untuk stack berisi 150 elemen,
sementara ketika dipakai oleh user stack hanya diisi 50 elemen,
maka telah terjadi pemborosan memory untuk sisa 100 elemen,
yang terpakai. Dengan penggunaan Linked List maka tempat yang
disediakan akan sesuai dengan banyaknya elemen yang mengisi
stack. Oleh karena itu pula dalam stack dengan linked list
tidak ada istilah full, sebab biasanya program tidak menentukan
jumlah elemen stack yang mungkin ada (kecuali jika sudah
dibatasi oleh pembuatnya). Namun demikian sebenarnya stack ini
pun memiliki batas kapasitas yakni dibatasi oleh jumlah memori
yang tersedia.
Operasi-operasi untuk Stack dengan Linked List
Konstruktor
Fungsi ini membuat stack baru yang kosong. Stack adalah kosong
jika Top tidak menunjuk apapun(bernilai NULL).
IsEmpty
Fungsi memeriksa apakah stack yang ada masih kosong
Push
Fungsi memasukkan elemen baru kedalam stack. Push disini mirip
dengan insert dalam single linked list biasa.
Pop
Fungsi ini mengeluarkan elemen teratas dari stack
Clear
Fungsi ini akan menghapus stack yang ada.
BAB IV
PENUTUP
4.1. Kesimpulan
Stack adalah suatu tumpukan dari benda. Konsep utamanya adalah
LIFO (Last In First Out), benda yang terakhir masuk dalam stack
akan menjadi benda pertama yang dikeluarkan dari stack.
4.2. Saran
Praktikum yang telah dilaksanakan diharapkan dapat dijadikan
sebagai bahan acuan untuk praktikum berikutnya agar lebih baik
lagi dalam hal pembahasan dan penjelasan materi dalam
pelaksanaan praktikum.