Stack

    Stack adalah struktur data yang mengikuti prinsip LIFO (Last In, First Out), yang berarti elemen yang terakhir dimasukkan (pushed) ke dalam stack akan menjadi elemen pertama yang dikeluarkan (popped). Stack dapat diibaratkan seperti tumpukan piring di mana Anda hanya bisa menambahkan atau mengambil piring dari bagian atas tumpukan. Operasi Dasar pada Stack Ada beberapa operasi dasar yang bisa dilakukan pada stack:


  • Push: Menambahkan (menumpuk) elemen baru ke bagian atas stack.
  • Pop: Menghapus (mengambil) elemen yang paling atas dari stack.
  • Peek/Top: Melihat elemen yang paling atas dari stack tanpa menghapusnya.
  • isEmpty: Memeriksa apakah stack kosong atau tidak.
  • isFull: Memeriksa apakah stack sudah penuh (jika stack dibatasi oleh ukuran tertentu).

PROGRAM STACK
  • Untuk mengimplementasikan program stack ke dalam C++ membutuhkan tiga method atau fungsi: push(); untuk menambahkan data ke tumpukan, pop(); untuk mengeluarkan data dari tumpukan, printStack() untuk menampilkan data yang ada ditumpukan.
  • Selain tiga fungsi tersebut, kita akan membuat dua fungsi opsional untuk mengecek apakah tumpukan kosong isEmpty() dan tumpukan penuh isFull().
  • Untuk menyimpan data kita bisa menggunakan empty array dengan maksimum array yang nanti akan kita definisikan sebagai maksimum tumpukan.
  • Agar data tumpukannya terstruktur kita bisa menggunakan struct sehingga lebih mudah mengakses data top dan array datanya sendiri seperti sebuah object.

OPERASI : PUSH
    PUSH adalah operasi yang digunakan untuk menambahkan elemen baru ke bagian atas stack. Operasi ini mengikuti prinsip LIFO (Last In, First Out), di mana elemen yang terakhir ditambahkan akan menjadi elemen pertama yang diambil.
                                                                                
                                                                                       Langkah-langkah operasi push diantaranya;
  • Memeriksa apakah tumpukan (stack) penuh.
  • Jika tumpukan penuh maka sudah tidak ada ruanguntuk memasukkan data ke tumpukan, jadi cukup tampilkan pesan bahwa tumpukan sudah penuh. Jika masih ada ruang, tambahkan satu nilai pada atas (top) tumpukan untuk menunjukkan ke ruang kosong 
  • Menambahkan data pada ruang kosong yang telah ditunjuk oleh top.

ILUSTRASI PUSH
    Misalkan diketahui suatu Stack S dengan maksimum 5 elemen. Andaikan elemen-elemen A, B,C, D, dan E dimasukkan (PUSH) secara berturut-turut maka elemen A akan menempati posisi pertama (1), elemen B pada posisi ke-2, dan elemen E pada posisi ke-5.


Perhatikan bahwa petunjuk Max tidak pernah bergerak. Yang bergerak adalah Top.

Petunjuk Top akan bertambah satu jika ada elemen masuk (PUSH) ke dalam Stack hingga Top = Max.






PUSH PADA C++









OPERASI : POP
    POP adalah operasi yang digunakan untuk menghapus elemen yang paling atas dari stack. Operasi ini mengikuti prinsip LIFO (Last In, First Out), di mana elemen yang terakhir dimasukkan akan menjadi elemen pertama yang dikeluarkan.

Langkah-langkah operasi pop diantaranya:
  • Memeriksa apakah tumpukan (stack) kosong.
  • Jika tumpukan kosong maka sudah tidak ada lagi data untuk dihapus, jadi cukup tampilkan pesan bahwa tumpukan kosong.
  • Jika masih ada data pada tumpukan, maka akses data yang paling atas (top).
  • Kemudian kurangi nilai petunjuk top.

POP PADA C++










    Dengan memahami konsep pop dan implementasinya, Anda dapat mengelola data dalam bentuk stack dengan lebih efektif dalam C++. Operasi pop sangat penting dalam berbagai aplikasi yang membutuhkan penghapusan elemen secara teratur dari stack, seperti dalam pemrosesan ekspresi matematika, penelusuran graf, dan banyak algoritma lainnya.



Pergi ke materi  Queue C++ >>





Tidak ada komentar:

Posting Komentar

Pages