Stack dan Queue dalam Bahasa C++

Anonymous November 19, 2015

Stack dan Queue dalam Bahasa C++

Stack dan Queue Menggunakan Array C++


Stack yaitu tumpukan sedangkan Queue yang berarti antrian. nah disini saya akan memberikan informasi kepada anda tentang Stack dan Queue. Sebelumnya kita harus mengerti apa sih definisi dari Stack dan Queue?

Definisi Stack dan Queue

Stack yang berdefinisikan susunan berbagai data dimana data tersebut dapat ditambahkan dan dihapus yang dilakukan pada bagian akhir data. Artinya data tersebut bila ditambahkan dan dihapuskan pada bagian akhir data (LIFO). Stack disini menggunakan metode LIFO. Sedangkan Queue adalah mengeluarkan satu elemen dari satu antrian. Artinya elemen yang pertama kali masuk dialah yang keluar duluan (FIFO). 

Operasi Stack

Ada 5 operasi stack sebagai berikut :
  • Push : digunakan untuk menambah item/data pada stack pada tumpukan paling atas
  • Pop : digunakan untuk mengambil item/data pada stack pada tumpukan paling atas
  • Clear : digunakan untuk mengosongkan stack
  • IsEmpty : fungsi yang digunakan untuk mengecek apakah stack tersebut sudah kosong
  • IsFull : fungsi yang digunakan untuk mengecek apakah stack sudah penuh

Inisialisasi Stack

Pada mulanya isi top dengan -1, kenapa? karena array dalam bahasa C dimulai dari 0, yang berarti bahwa data stack tersebuh adalah kosong (belum ada data).
Top adalah suatu variabel penanda dalam  stack yang menunjukkan elemen teratas data stack sekarang. Top of Stack akan bergerak hingan mencapai max of stack yang akan menyebabkan stack penuh. Contoh inisialisasi stack :

inisialisasi stack


Inisialisasi Queue

Inisialisasi queue hampir mirip dengan stack, bedanya yaitu top (stack) kita ganti dengan head&tail. Sistem kerjapun juga berbeda. Anggaplah queue itu seperti ular, yang mempunya head&tail. pada saat head&tail pada di bagian indek 0 posisi head&tail tetap sama. namun jika indek berada di 1, maka tail berpindah ke indek 1. head tidak mengikuti tail karena sistem dari queue adalah menggunakan FIFO maka head disini untuk antrian yang pertama dan yang akan keluar pertama kali. Contoh inisialisasi queue :


Inisialisasi Queue

Operasi Queue

  • Create() : untuk menginisialisasi dan membuat queue
  • IsEmpty() : fungsi yang digunakan untuk mengecek apakah stack tersebut sudah kosong
  • IsFull() : fungsi yang digunakan untuk mengecek apakah stack sudah penuh
  • Enqueue() : digunakan untuk menambahkan data ke dalam antrian melalui belakang
  • Dequeue() : digunakan untuk menghapus data head/pertama dari antrian
  • Clear() : untuk menghapus data antrian dengan cara membuat head&tail = -1
  • Tampil() : untuk menampilkan nilai data antrian

Program Visual Basic silahkan klik disini.

Share this :

Previous
Next Post »

2 comments

  1. very informative post for me as I am always looking for new content that can help me and my knowledge grow better.

    ReplyDelete
  2. Hey keep posting such good and meaningful articles.

    ReplyDelete

Penulisan markup di komentar
  • Silakan tinggalkan komentar sesuai topik. Komentar yang menyertakan link aktif, iklan, atau sejenisnya akan dihapus.
  • Untuk menyisipkan kode gunakan <i rel="code"> kode yang akan disisipkan </i>
  • Untuk menyisipkan kode panjang gunakan <i rel="pre"> kode yang akan disisipkan </i>
  • Untuk menyisipkan quote gunakan <i rel="quote"> catatan anda </i>
  • Untuk menyisipkan gambar gunakan <i rel="image"> URL gambar </i>
  • Untuk menyisipkan video gunakan [iframe] URL embed video [/iframe]
  • Kemudian parse kode tersebut pada kotak di bawah ini