STACK
Operasi pada Stack Deklarasi Inisialisasi Cek kosong Cek penuh (pada Array) Penambahan Pengambilan Pengaksesan
(1) Deklarasi Proses yang harus dilakukan pertama kali adalah deklarasi/menyiapkan tempat. Langkah yang harus dilakukan adalah : Deklarasi class Deklarasi struktur data (menggunakan array atau linked list) Deklarasi pointer top
Deklarasi Stack dengan Linked-list Pembuatan class stack contoh : 2. Pembuatan class Node 3. Pembuatan variabel head, tail dan top bertipe Node. Ketiga variabel ini dideklarasikan pada class Stack Node head,tail,top;
Contoh Class Node
Program Deklarasi (StackLinkedList.java)
(2) Inisialisasi Pada Linked List: Proses inisialisasi dilakukan dengan memberikan nilai awal pada variabel head, tail dan top dengan nilai null. head = tail = top = null;
Program Inisialisasi (Linked List)
(3) Cek Kosong Operasi yang digunakan untuk mengecek kondisi stack dalam keadaan kosong. Caranya : melihat nilai top. Jika nilainya sama seperti ketika inisialisasi berarti stack dalam kondisi kosong (top=null). Operasi ini harus dapat mengembalikan nilai true jika stack kosong dan false jika sebaliknya.
Program “isEmpty” (Linked List)
(5) Operasi POP Pop adalah proses pengambilan data pada stack. Ketika pop terjadi, element pada stack akan berkurang, yaitu element yang paling akhir ditambahkan. Sehingga posisi pointer top juga akan bergeser : Pada linked list : top menunjuk ke node sebelum node yang dihapus.
(5) Operasi POP...........(lanjutan) Langkah-langkah : Pengecekan stack dalam kondisi kosong dengan memanggil method isEmpty(). Jika nilai yang dikembalikan true maka pop tidak bisa dilakukan (penangkapan error oleh exception handling). Jika nilai yang dikembalikan false maka akan dilakukan langkah berikutnya (langkah 2 dan 3). Data dari element paling belakang akan menjadi return value (nilai yang dikembalikan). Pergeseran posisi top.
Program Pop (Linked List)
Program removeLast
(6) Operasi Push Push adalah proses penambahan element pada stack. Ketika push terjadi, element pada stack akan bertambah 1. Posisi pointer top akan bergeser menunjuk pada element baru yang ditambahkan.. Pada linked list : top akan menunjuk ke node baru yang ditambahkan
(6) Operasi PUSH...........(lanjutan) Langkah-langkah : Penambahan element baru pada bagian belakang stack. Pergeseran posisi top.
Program Push (Linked List)
Program addLast
(7) Operasi peek Peek adalah proses pengaksesan element yang ditunjuk oleh top(yaitu element yang terakhir kali ditambahkan). Operasi ini berbeda dengan pop karena tidak disertai dengan penghapusan data yang ada hanya pengaksesan (pengembalian data saja).
Program Peek (Linked List)
Penting! Untuk linked list, jika operasi push dilakukan dari depan (addFirst) maka operasi pop juga dilakukan dari depan (removeFirst). Sebaliknya, jika operasi push dari belakang (addLast) maka operasi pop juga dilakukan dari belakang (removeLast).