56
Representasi queue
dalam
lokasi
sekuensial
lebih
sulit
daripada
stack.
Skema paling sederhana adalah
menggunakan sebuah array satu dimensi dan dua
variabel,
front
dan
rear.
Dari
representasi
ini,
operasi
queue
pada
representasi
sebagai berikut :
Queue CreateQ(max_queue_size)::=
#define MAX_QUEUE_SIZE 100 /*Maximum queue size*/
typedef
struct {
int key;
/* other fields */
} element;
element queue[MAX_QUEUE_SIZE];
int rear = -1;
int front = -1;
Boolean IsEmptyQ(queue)::= front == rear
structure Queue is
objects
:
sebuah
daftar
terurut
terbatas
pada
nol
atau
lebih
elemen.
functions:
for
all
queue
?
Queue,
item
?
element,
max_queue_size
?
integer element
Queue CreateQ(max_queue_size) ::=
buat
sebuah
queue
kosong
yang
ukuran
maksimumnya
adalah
max_queue size
Boolean IsFullQ(queue,max_queue_size) ::=
|