Mengenal Stack: Struktur Data yang Tersembunyi di Balik Layar
Stack adalah struktur data linear yang mengikuti prinsip LIFO (Last In, First Out). Artinya, elemen yang terakhir dimasukkan adalah elemen yang pertama kali diambil. Stack sering diumpamakan sebagai tumpukan buku. di mana buku yang terakhir ditumpuk adalah buku yang pertama kali diambil. Operasi dasar dalam stack meliputi push (menambahkan elemen ke atas tumpukan), pop (menghapus elemen dari atas tumpukan), dan top (mengambil elemen paling atas tanpa menghapusnya).
Operasi dalam stack
Operasi push digunakan untuk menambahkan elemen baru ke puncak stack. Ketika push dilakukan, elemen baru ditempatkan di posisi paling atas dari stack, sehingga elemen tersebut menjadi elemen terakhir yang masuk. Hal ini memastikan bahwa elemen tersebut akan menjadi elemen pertama yang keluar jika operasi pop dilakukan selanjutnya. Contohnya, jika stack berisi [1, 2, 3] dan kita melakukan push(4), stack akan menjadi [1, 2, 3, 4].
2. Pop
Operasi pop berfungsi untuk menghapus elemen dari puncak stack dan mengembalikan nilai dari elemen tersebut. Saat pop dilakukan, elemen teratas dihapus dari stack dan nilai yang dihapus tersebut dikembalikan, sehingga memungkinkan pengambilan data terakhir yang masuk ke dalam stack. Misalnya, jika stack berisi [1, 2, 3, 4] dan kita melakukan pop(), stack akan menjadi [1, 2, 3] dan nilai yang dikembalikan adalah 4.
3. Top

4. IsEmpty
Is empty adalah kondisi di mana stack tidak memiliki elemen sama sekali, sehingga tidak ada data yang dapat diambil dari stack. Ini sering digunakan untuk memeriksa apakah stack sudah kosong sebelum melakukan operasi pop atau peek. Misalnya, jika stack tidak berisi elemen apa pun, operasi is empty akan mengembalikan nilai true, sedangkan jika terdapat satu atau lebih elemen dalam stack, nilai yang dikembalikan akan false. Sebagai contoh, jika stack berisi [1, 2, 3, 4], maka isEmpty() akan mengembalikan false. Namun, jika stack kosong, isEmpty() akan mengembalikan true.

5. IsFull
Operasi Isfull adalah kondisi di mana stack telah mencapai kapasitas maksimalnya, sehingga tidak dapat menampung elemen tambahan lagi. Dalam implementasi stack menggunakan array berukuran tetap misalnya, ketika stack sudah berisi elemen sebanyak ukuran array tersebut, kondisi is full akan mengembalikan nilai true. Memeriksa kondisi is full sebelum melakukan operasi push adalah penting untuk menghindari overflow dan memastikan pengelolaan data yang efisien dalam penggunaan stack.
0 Komentar