Queue dengan Array
Antrian dapat diartikan sebagai suatu kumpulan data yang seolah – olah terlihat seperti ada data yang diletakkan disebelah data yang lain. Bersifat FIFO (First In First Out). Elemen yang pertama masuk ke antrian akan keluar pertama kalinya.
Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya
Sehingga membutuhkan 2 variabel: Head dan Tail
DEKLARASI QUEUE
Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya
Sehingga membutuhkan 2 variabel: Head dan Tail
Operasi-operasi:
Create()
- Untuk menciptakan dan menginisialisasi Queue
- Dengan cara membuat Head dan Tail = -1
IsEmpty()
- Untuk memeriksa apakah Antrian kosong atau tidak.
- Dengan cara memeriksa nilai Tail, jika Tail = -1 maka empty
- Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala antrian (elemen pertama dalam antrian) yang tidak akan berubah-ubah
- Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian kebelakang, yaitu menggunakan nilai Tail
Fungsi is Full
- Untuk mengecek apakah Antrian sudah penuh atau belum
- Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh
Dua operasi dasar ANTRIAN :
1. Enqueue (tambah)
- Untuk menambahkan elemen ke dalam Antrian, penambahan elemen selalu ditambahkan di elemen paling belakang
- Penambahan elemen selalu menggerakan variabel Tail dengan cara increment counter Tail terlebih dahulu
2. Dequeue (ambil)
- Digunakan untuk menghapus elemen terdepan/pertama (head) dari Antrian
- Dengan cara menggeser semua elemen antrian kedepan dan mengurangi Tail dgn 1
- Penggeseran dilakukan dengan menggunakan looping
Clear()
- Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan Head = -1
- Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-elemen Antrian tidak lagi terbaca.
Tampil()
Tidak ada komentar:
Posting Komentar