Download - STRUKTUR DATA
STRUKTUR DATA PERTEMUAN 7
1. Konsep utama dalam Queue adalah FIFO ( First In First Out ).
2. Struktur data ini banyak dipakai dalam informatika misalnya untuk merepresentasi : Antrian job dalam sistem operasi Antrian dalam dunia nyata
3. Antrian datanya seolah-olah mengantri dari yang awal sampai yang terakhir.
4. Suatu metode untuk Input dan hapus di dalam memori komputer.
QUEUE / ANTRIAN
5. Elemen pertama yang dikenali (Head) dan elemen terakhirnya (Tail)
6. Aturan penyisipan dan penghapusan elemennya didefinisikan sebagai berikut :
• Penyisipan selalu dilakukan setelah elemen terakhir
• Penghapusan selalu dilakukan pada elemen pertama
7. Satu elemen dengan elemen lain dapat diakses melalui informasi Next
QUEUE / ANTRIANQUEUE / ANTRIAN
ARRAY (LARIK)•
Jenis – jenis QUEUE / ANTRIAN :1. LINEAR QUEUE (Antrian Lurus)2. CIRCULAR QUEUE (Antrian Melingkar)
QUEUE / ANTRIAN
ARRAY (LARIK)QUEUE / ANTRIAN
VISUALISASI ANTRIAN MELINGKAR
A
B
C
DE
1
2
4
3
8
7
6
5
ARRAY (LARIK)QUEUE / ANTRIAN
KEKURANGAN ANTRIAN LURUS
A
B
C
DE
12
4
3
87
6
5
1 2 3 4 5 6 7 8C D EB
ARRAY (LARIK)QUEUE / ANTRIAN
1 2 3 4 5 6 7 8
Q[ ]
dpn
Jika :Blkg = max
ANTRIAN tidak dpt diisi lagi
blkg
D
MAX
E F G H
VISUALISASI ANTRIAN LURUS
ARRAY (LARIK)QUEUE / ANTRIAN
1 2 3 4 5 6 7 8
dpnJika :
Blkg = max(setting ke index awal)
Blkg := 1
blkg
J
MAX
E F G H
VISUALISASI ANTRIAN MELINGKAR
I
blkgblkg
ARRAY (LARIK)QUEUE / ANTRIAN
1 2 3 4 5 6 7 8
dpnJika :
Dpn = max(setting ke index awal)
Dpn := 1
blkg
J
MAX
H
VISUALISASI ANTRIAN MELINGKAR
I
dpndpn
ARRAY (LARIK)
function KOSONG(Q:Antri) : boolean; begin
KOSONG := (Depan = Belakang); end;
QUEUE / ANTRIAN
CONTOH PETIKAN PROGRAM
Const Max = 10;
Type Antri = array[1..max] of char;
Var Antrian : Antri;Depan, Belakang, jml : integer;
ARRAY (LARIK)
procedure TAMBAH(var Q:Antri; X:char)begin
if Belakang = Max thenBelakang := 1
elseBelakang := Belakang+1;
if jml = max thenwrite(‘ANTRIAN PENUH COY….’)
elseQ[Belakang] := X;jml := jml + 1
end;
QUEUE / ANTRIAN
CONTOH PETIKAN PROGRAM
SALAH
ARRAY (LARIK)
procedure TAMBAH(var Q:Antri; X:char)begin
if jml = max thenwrite(‘ANTRIAN PENUH COY….’)
elseif Belakang = Max then Belakang := 1else Belakang := Belakang+1;
Q[Belakang] := X;jml := jml + 1
end;
QUEUE / ANTRIAN
CONTOH PETIKAN PROGRAM
ARRAY (LARIK)
function HAPUS(var Q:Antri) : char;begin
if jml = 0 thenwriteln(‘ANTRIAN KOSONG TUCH
COY’)elsebegin
if Depan = Max then Depan := 1else Depan := Depan + 1;
HAPUS := Q[Depan];Q[depan] := ‘ ’;jml := jml – 1
end;end;
QUEUE / ANTRIAN
CONTOH PETIKAN PROGRAM
Tugas 5Perbaikilah Program QUEUE (file ANTREPAS), agar :1. Pesan “ANTRIAN KOSONG” dapat tampil saat antrian
benar-benar kosong2. Pesan “ANTRIAN PENUH” dapat tampil saat antrian
benar-benar Penuh
Tugas 5Perbaikilah Program QUEUE (file ANTREPAS), agar :1. Pesan “ANTRIAN KOSONG” dapat tampil saat antrian
benar-benar kosong2. Pesan “ANTRIAN PENUH” dapat tampil saat antrian
benar-benar Penuh
• THE END OF THIS DAY• KANGGOANG NAAAHHH,,,,!!!!