Jumat, 01 Januari 2016

QUEUE



Queue/antrian adalah ordered list dengan penyisipan di satu ujung, sedang penghapusan di ujung lain. Ujung penyisipan biasa disebut rear/tail, sedang ujung penghapusan disebut front/head. Queue mengikuti aturan FIFO (Last In First Out). Implementasi dapat menggunakan array atau linked-list.
SOAL
Berikan gambaran/ ilustrasi dari kasus antrian berikut !
  1. Diketahui suatu antrian/queue dengan max=6
  2. Lakukan enqueue 4 elemen ke dalam antrian, dimanakah posisi Head dan Tall ?
  3. Kemudian lakukan dequeue 2 elemen dan antrian maka dimana posisi Head dan Tall ?
  4. Dari keadaan di atas, bagaimana kondisi ISFULL dan ISEMPITY nya ?
JAWABAN
1.  Diketahui suatu antrian/queue dengan max=6 !

2.  Lakukan enqueue 4 elemen ke dalam antrian, dimanakah posisi Head dan Tall ?
Enqueue Untuk menambahkan elemen ke dalam Antrian, penambahan elemen selalu
ditambahkan di elemen paling belakang

3.  Kemudian lakukan dequeue 2 elemen dan antrian maka dimana posisi Head dan Tall ?
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.

4.   Dari keadaan di atas, bagaimana kondisi ISFULL dan ISEMPITY nya ?
q  IsEmpty()
Untuk memeriksa apakah Antrian sudah penuh atau belum
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.
q   IsFull
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
Antrian di atas, nilai Tail = -1 maka Isempty

Antrian di atas, nilai Tail = 4 maka TIDAK dikatakan IsFull, karena untuk mengatakan IsFull pada suatu antrian nilai Tail harus >=MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh.





5 komentar:

  1. Komentar ini telah dihapus oleh pengarang.

    BalasHapus
  2. Maksih Boss tugas kuliah ku tinggalkan copas

    BalasHapus
  3. caranya gmna min ? pake program ap ngerjainnya ?

    BalasHapus
  4. Thx ngab, Tugas ku tinggal copas.. Semangat buat jawaban jawaban kek gini ya ngab

    BalasHapus