1.
Pengertian Stack
Stack atau tumpukan merupakan salah satu
teknik dalam struktur data yang cukup mudah dipahami. Biasanya kita akan
menjumpai topik ini pada awal materi setelah array karena array
dibutuhkan dalam implementasi stack. Beberapa macam struktur data lain
memiliki algoritma yang lebih rumit bila dibandingkan dengan stack.
Pembahasan sederhana tentang stack akan saya rangkum menjadi beberapa
poin agar lebih rapi dan mudah dipahami.
2. Ilustrasi
Stack
Kasusnya, saya mempunyai buku-buku pelajaran yang terdiri dari buku
Matematika, Fisika, Biologi, Kimia dan Bahasa Indonesia. Untuk menghemat ruang,
kemudian saya menyimpan buku-buku tersebut ke dalam kotak yang saya miliki.
Saya memasukkan buku dengan urutan sebagai berikut: 1. Fisika, 2. Kimia, 3.
Matematika, 4. Bahasa Indonesia, 5. Biologi.
Karena besok jadwalnya Matematika dan saya harus belajar, maka untuk
mengambil buku Matematika saya harus mengeluarkan dulu buku Biologi dan Bahasa
Indonesia. Sehingga buku Matematika dapat saya ambil dan yang tersisa pada
kotak saat ini adalah buku Fisika dan Kimia.
3.
Operasi
pada stack
Ada
2 operasi dasar yang bisa dilaksanakan pada sebuah stack, yaitu operasi
menyisipkan data(push) dan operasi menghapus data(pop).
1.
Operasi
Push
prosedur
ini terlebih dahulu akan menaikkan posisi TOP satu level ke atas. Misalkan
kondisi stack masih kosong (TOP = 0), lalu prosedur push akan menaikkan
posisi TOP satu level ke atas, yakni ke posisi 1 (TOP = 1), baru setelah itu
data dimasukkan ke dalam array pada indeks ke-1 (yakni indeks dimana TOP
berada).
2.
Operasi
Pop
Operasi
Pop adalah operasi untuk menghapus elemen yang terletak pada posisi paling atas
dari sebuah stack. Prosedur ini berfungsi untuk mengeluarkan/ menghapus nilai
terakhir (yang berada pada posisi paling atas) dari stack, dengan cara
menurunkan nilai TOP satu level ke bawah.
Misalkan
TOP berada pada indeks ke-5, maka ketika akan mengeluarkan/ menghapus
data
pada posisi paling atas (pada posisi TOP), prosedur ini akan menurunkan posisi
TOP.
4. Proses
Operasi Stack
Selain operasi dasar pada stuck, ada lagi operasi lain dapat terjadi
dalam stack, yaitu :
1.
Proses
deklarasi yaitu proses pendeklarasaian stack.
2.
Proses
Isempty yaitu proses pemeriksaan apakah stack dala, keadaan kososong.
3.
Proses
isfull yaitu proses pemeriksaan apakah stack telah penuh.
4.
Proses
inisialisasi yaitu proses pembuangan stack kosong, biasanya dengan pemberian
nilai untuk top.
5.
Proses
clear yaitu proses menampilkan semua elemen-elemen stuck.
Perhatikan contoh program stack
Perhatikan contoh program stack
Hasil Runnig :
Penjelasan :
Hasil running diatas jika anda memasukkan /input no satu/1 maka anda harus memasukkan data, karena maksimal 4 angka jadi anda hanya dapat menginptkan 5 angka/terhitung dari 0. Karena menginputkan nya dimulai angka 5 maka angka yanng dapat dimasukkan hanya sampai 8 (0,5,6,7,8), sedangkan apabila anda menginputkan angka 9 maka akan tampil seperti dibawah ini:
dan jika selanjutnya anda dapat memilih pilihan selanjutnya /2 yaitu memilih hapus/pop, sehingga akan tampil seperti berikut :
Hasil dari listing diatas menjelaskan ketika anda menginputkan 2 maka akan tampil keterangan data teratas sudah terambil yaitu ngka 8.
dan jika anda sudah menginputkan 5 kali pilihan (2) maka akan tampil seperti berikut:
Hasil running diatas menjelaskan bahwa lima angka yang anda inputkan (0,5,6,7,8) telah habis anda ambil dengan keterangan data kosong.
Selanjutnya inputkan no 3 yaitu tampil/yang fungsinya menampilkan hasil akhir yang kita inputkan, dan hasilnya adalah seperti berikut :
dan terakhir ketika anda menginputkan no 5 maka program telah selesai/keluar :
Sumber :
Tidak ada komentar:
Posting Komentar