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