Diktat_Prosedural_13_StudiKasus

Untuk representasi kontigu didefinisikan struktur

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: [1..100], Next : address > P : address Count : integer [1..100] { Kemunculan setiap huruf } JumlahKar : integer { Jumlah karakter pada pita } C : character ['a'..'z'] { Untuk traversal karakter abjad } procedure InsertLast (input/output First, P : address) { Insert P sesudah elemen terakhir list First, P sudah dialokasi dan informasinya terdefinisi } ALGORITMA START if CC = '.' then output ("Pita kosong, tidak ada isinya") else { Inisialisasi : traversal untuk mengosongkan list kemunculan} C traversal ['a'..'z'] HeadListC ← Nil JumlahKar ← 0 { Proses sekuensial } repeat JumlahKar ← JumlahKar + 1 depend on CC : CC = ' ' : CC ≠ ' ' : Alokasi(P) if (P ≠ Nil) then Posisi(P) ← JumlahKar Next(P) ← Nil InsertLast(HeadListCC,P) ADV until (CC = '.') { Penulisan hasil : traversal } C traversal ['a'..'z'] P ← HeadListC if (P ≠ Nil) then output (C, ":"); Count ← 0 repeat Count ← Count + 1; output (Posisi(P)) P ← Next(P) until (K = Nil) output ("Muncul ", Count, " kali") Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 21 Nov 2011 33 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB procedure InsertLast (input/output First, P : address) { Insert P sesudah elemen terakhir list First, P sudah dialokasi dan informasinya terdefinisi } KAMUS LOKAL Last : address ALGORITMA if (First = Nil) then { Insert first } First ← P else { traversal sampai Last dg mencatat address, kemudian insert sebagai suksesor Last } Last ← First while (Next(Last) ≠ Nil) do Last ← Next(Last) { Next(Last) = Nil } Next(Last) ← P Latihan Soal 1. Untuk representasi KONTIGU, didefinisikan struktur sebagai berikut : List kemunculan dicatat dalam sebuah tabel, dengan model representasi tanpa mark (dicatat banyaknya kemunculannya. Lihat model representasi kata pada Bagian I.). Tabel Kemunculan ‘a’ ‘b’ 1 2 3 5 9 Banyaknya kemunculan 2 3 ‘x’ ‘y’ ‘z’ Kamus untuk representasi tersebut diberikan sebagai berikut, lengkapilah algoritmanya: Program Kemunculan3 { Representasi KONTIGU list huruf, representasi kontigu list posisi } KAMUS constant Nmax : integer = 100 { maksimum isi pita yang diproses adalah 100 } TabMuncul : < array [1..NMax] of integer, MaxIsi : integer > { TabMuncul[1..MaxIsi] elemennya adalah posisi kemunculan } TabHuruf : array ['a'..'z'] of TabMuncul { TabHuruf (i) = N, artinya Huruf CC muncul ke-i kalinya pada posisi N } CC ALGORITMA 2. Untuk representasi KONTIGU, dapat juga didefinisikan struktur list posisi kemunculan yang direpresentasi dalam tabel, dengan model representasi memakai mark yang diberikan ilustrasinya sebagai berikut: Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 21 Nov 2011 34 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB List Posisi (model dengan mark) ‘a’ ‘b’ ‘x’ ‘y’ ‘z’ Kamus untuk representasi tersebut dib...
View Full Document

Ask a homework question - tutors are online