1 / 22

STRUKTUR DATA

STRUKTUR DATA. PERTEMUAN 6. 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

daxia
Télécharger la présentation

STRUKTUR DATA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. STRUKTUR DATA PERTEMUAN 6 vandawaa@yahoo.com

  2. 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 • Suatu metode untuk Input dan hapus di dalam memori komputer. • Antrian datanya seolah-olah mengantri dari yang awal sampai yang terakhir.

  3. 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 HEAD TAIL DEPAN BELAKANG

  4. QUEUE / ANTRIAN QUEUE / ANTRIAN Elemen yang pertama kali masuk ke antrian akan keluar pertama kalinya

  5. ARRAY (LARIK) QUEUE / ANTRIAN Contoh: 1.Guntur, 2.Aditya, 3.Tyas, 4.Hendra, 5.Dyah Data nomor 1 datang/masuk duluan, data nomor 1 juga yang keluar terlebih dahulu.

  6. ARRAY (LARIK) QUEUE / ANTRIAN Jenis – jenis QUEUE / ANTRIAN : • LINEAR QUEUE (AntrianLurus) • CIRCULAR QUEUE (AntrianMelingkar)

  7. ARRAY (LARIK) QUEUE / ANTRIAN Algoritma • Input/tambah data Jika ada input maka no queue/no antrian yang semula 0 akan tambah 1 demi 1 sampai maksimal antrian. • Pengambilan data Jika ada pengambilan data maka data dipindahkan di variabel lain contohnya temp. Dan posisi antriannya yang semula maksimal akan berkurang 1 demi 1 sampai posisi 0 kembali.

  8. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 Q[ ] dpn blkg • Antrian awal KOSONG : • Dpn := 0 • Blkg := 0 ANTRIAN KOSONG

  9. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 A Q[ ] • Antrian diisi ‘A’ : • Dpn = 0 • (Blkg + 1) => Blkg = 1 • Q[blkg] = ‘A’ dpn blkg

  10. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 A B Q[ ] • Antrian diisi ‘B’ : • Dpn = 0 • (Blkg + 1) => Blkg = 2 • Q[blkg] = ‘B’ dpn blkg

  11. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 C A B Q[ ] • Antrian diisi ‘C’: • Dpn = 0 • (blkg + 1) =>Blkg = 3 • Q[blkg] = ‘C’ dpn blkg

  12. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 C A B Q[ ] • Ambil 1 antrian : • (Dpn + 1) => Dpn = 1 • Blkg = 3 • Q[dpn] = ‘A’ dpn blkg

  13. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 C B Q[ ] • Ambil 1 antrian : • (Dpn + 1) => Dpn = 2 • Blkg = 3 • Q[dpn] = ‘B’ dpn blkg

  14. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS ANTRIAN KOSONG MAX 1 2 3 4 5 6 7 8 C Q[ ] • Ambil 1 antrian : • (Dpn + 1) => Dpn = 3 • Blkg = 3 • Q[dpn] = ‘C’ dpn blkg • Jika : • Dpn = blkg • KOSONG

  15. ARRAY (LARIK) QUEUE / ANTRIAN VISUALISASI ANTRIAN LURUS MAX 1 2 3 4 5 6 7 8 C D E F G A B H Q[ ] • Jika : • Blkg = max dan Dpn = 0 • ANTRIAN PENUH dpn blkg

  16. ARRAY (LARIK) QUEUE / ANTRIAN

  17. 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 : integer;

  18. ARRAY (LARIK) QUEUE / ANTRIAN CONTOH PETIKAN PROGRAM procedure TAMBAH(var Q:Antri; X:char) begin if (Belakang = Max) and (Depan = 0) then write(‘ANTRIAN PENUH COY….’) else Belakang := Belakang+1; Q[Belakang] := X; End; MAX 1 2 3 4 5 6 7 8 C D E F G A B H Q[ ] dpn blkg

  19. ARRAY (LARIK) QUEUE / ANTRIAN CONTOH PETIKAN PROGRAM function HAPUS(var Q:Antri) : char; begin if KOSONG(Q) then writeln(‘ANTRIAN KOSONG TUCH COY’) else begin Depan := Depan + 1 HAPUS := Q[Depan]; end; end; MAX 1 2 3 4 5 6 7 8 Q[ ] blkg dpn

  20. ARRAY (LARIK) QUEUE / ANTRIAN CONTOH REVIEW PROGRAM procedure TAMBAH(var Q:Antri; X:char) begin if (Belakang = Max) and (Depan = 0) then write(‘ANTRIAN PENUH COY….’) else Belakang := Belakang+1; Q[Belakang] := X; End; MAX 1 2 3 4 5 6 7 8 T O L E Y Q[ ] dpn Begin clrscr; TAMBAH(Antrian,’L’); TAMBAH(Antrian,’E’); TAMBAH(Antrian,’T’); TAMBAH(Antrian,’O’); TAMBAH(Antrian,’Y’); readln; End. blkg blkg blkg blkg blkg blkg

  21. ARRAY (LARIK) QUEUE / ANTRIAN CONTOH REVIEW PROGRAM function HAPUS(var Q:Antri) : char; begin if KOSONG(Q) then writeln(‘ANTRIAN KOSONG TUCH COY’) else begin Depan := Depan + 1 HAPUS := Q[Depan]; end; end; MAX 1 2 3 4 5 6 7 8 T O L E Y O T Q[ ] dpn dpn dpn dpn Begin clrscr; HAPUS(Antrian); HAPUS(Antrian); TAMBAH(Antrian,’O’); HAPUS(Antrian); TAMBAH(Antrian,’T’); readln; End. blkg blkg blkg

  22. THE END OF THIS DAY • KANGGOANG NAAAHHH,,,,!!!!

More Related