Serch
Translate
Label
Cheat Codes
(3)
Cracking and Hacking
(2)
Creator
(1)
Games
(5)
HTML Dasar
(18)
Komunikasi Data [ KOMDAT ]
(4)
Music Lyric
(67)
Pc Mig33 Tools
(24)
Ramalan Cinta
(1)
Rekayasa Perangkat Lunak
(3)
Sistem Operasi
(7)
SMS Gratis
(1)
Software
(36)
Struktur Data
(11)
Study-Pemograman
(14)
Tips Blogger
(11)
Tips dan Trick
(25)
Visual Basic
(4)
Follower
Entri Populer
Minggu, 04 Desember 2011
Varian Linked List
Varian Linked List adalah Linked List yang tidak sesederhana representasi di atas.
1. List Berkait dengan kepala dan ekor.
Kepala = Ekor = Nil → untuk List Kosong
Kepala = Ekor <> Nil → List beranggotakan 1 elemen
3. List dengan pointer ganda (Double Linked List).
4. List beranak bertingkat (menggunakan field pointer tambahan untuk kepala ke list anak).
5. List kombinasi dari varian-varian tersebut.
Operasi-operasi pada List Sirkuler
a. Kunjungan pada tiap elemen
Procedure PlrListSirkuler (var Kepala : List);
Begin
If (Kepala <> Nil) then
Begin
P:= Kepala;
Repeat
Proses (P);
P:= P^. Berikut;
Until P = Kepala;
End;
End;
b. Sisipkan elemen baru
Sebagai elemen pertama :
Procedure SisipPtmSirkuler (var Kepala : List);
Var
Q : List;
Begin
If (Kepala = Nil) then
Begin
Kepala := P;
P^. Berikut := Kepala ; {menunjuk dirinya sendiri}
End
Else
Begin
Q := Kepala;
While (Q^. Berikut <> Kepala) Do {menunjuk kepala / link
Q := Q^.Berikut; sirkulernya}
P^. Berikut := Kepala;
Q^. Berikut := P;
Kepala := P;
End;
End;
Sebagai elemen terakhir :
Procedure SisipAkrSirkuler (var Kepala : List; P : List);
Var
Q : List;
Begin
If (Kepala = Nil) Then
Kepala := P
Else
Begin
Q := Kepala;
While (Q ^. Berikut <> Kepala) do {menunjuk Kepala / Link
Q := Q^. Berikut; sirkulernya}
Q^. Berikut := P;
End;
P^. Berikut := Kepala;
End;
c. Penghapusan Elemen List Sirkuler
Penghapusan Elemen Pertama List Sirkuler :
Procedure HapusElmPertamaListSirkuler (Var Kepala : List);
Var
P : List;
Begin
If Kepala <> Nil Then
Begin
If Kepala^. Berikut = Kepala Then
Begin
Dispose (Kepala);
Kepala := Nil;
End
Else {If Kepala^. Berikut <> Kepala Then}
Begin
P := Kepala;
Kepala := Kepala^. Berikut;
While Kepala^. Berikut <> P do
Kepala := Kepala^. Berikut;
End;
Kepala^. Berikut := P^. Berikut;
Dispose (P);
End;
End;
End;
Penghapusan Elemen Terakhir List Sirkuler :
Procedure HapusElmAkhirListSirkuler (Var Kepala : List);
Var
PreAkhir, P : List;
Begin
If Kepala <> Nil Then
Begin
If Kepala^. Berikut = Kepala Then
Begin
Dispose (Kepala);
Kepala := Nil;
End
Else
Begin
P := Kepala;
While P^. Berikut <> Kepala do
Begin
PreAkhir := P;
P:= P^. Berikut;
End;
PreAkhir^. Berikut := Kepala;
Dispose (P);
End;
End;
End;
Sumber dari : http://www.yudasy.web.id
Varian Linked List adalah Linked List yang tidak sesederhana representasi di atas.
1. List Berkait dengan kepala dan ekor.
Kepala = Ekor = Nil → untuk List Kosong
Kepala = Ekor <> Nil → List beranggotakan 1 elemen
2. List Sirkuler.
3. List dengan pointer ganda (Double Linked List).
4. List beranak bertingkat (menggunakan field pointer tambahan untuk kepala ke list anak).
5. List kombinasi dari varian-varian tersebut.
Operasi-operasi pada List Sirkuler
a. Kunjungan pada tiap elemen
Procedure PlrListSirkuler (var Kepala : List);
Begin
If (Kepala <> Nil) then
Begin
P:= Kepala;
Repeat
Proses (P);
P:= P^. Berikut;
Until P = Kepala;
End;
End;
b. Sisipkan elemen baru
Sebagai elemen pertama :
Procedure SisipPtmSirkuler (var Kepala : List);
Var
Q : List;
Begin
If (Kepala = Nil) then
Begin
Kepala := P;
P^. Berikut := Kepala ; {menunjuk dirinya sendiri}
End
Else
Begin
Q := Kepala;
While (Q^. Berikut <> Kepala) Do {menunjuk kepala / link
Q := Q^.Berikut; sirkulernya}
P^. Berikut := Kepala;
Q^. Berikut := P;
Kepala := P;
End;
End;
Sebagai elemen terakhir :
Procedure SisipAkrSirkuler (var Kepala : List; P : List);
Var
Q : List;
Begin
If (Kepala = Nil) Then
Kepala := P
Else
Begin
Q := Kepala;
While (Q ^. Berikut <> Kepala) do {menunjuk Kepala / Link
Q := Q^. Berikut; sirkulernya}
Q^. Berikut := P;
End;
P^. Berikut := Kepala;
End;
c. Penghapusan Elemen List Sirkuler
Penghapusan Elemen Pertama List Sirkuler :
Procedure HapusElmPertamaListSirkuler (Var Kepala : List);
Var
P : List;
Begin
If Kepala <> Nil Then
Begin
If Kepala^. Berikut = Kepala Then
Begin
Dispose (Kepala);
Kepala := Nil;
End
Else {If Kepala^. Berikut <> Kepala Then}
Begin
P := Kepala;
Kepala := Kepala^. Berikut;
While Kepala^. Berikut <> P do
Kepala := Kepala^. Berikut;
End;
Kepala^. Berikut := P^. Berikut;
Dispose (P);
End;
End;
End;
Penghapusan Elemen Terakhir List Sirkuler :
Procedure HapusElmAkhirListSirkuler (Var Kepala : List);
Var
PreAkhir, P : List;
Begin
If Kepala <> Nil Then
Begin
If Kepala^. Berikut = Kepala Then
Begin
Dispose (Kepala);
Kepala := Nil;
End
Else
Begin
P := Kepala;
While P^. Berikut <> Kepala do
Begin
PreAkhir := P;
P:= P^. Berikut;
End;
PreAkhir^. Berikut := Kepala;
Dispose (P);
End;
End;
End;
Sumber dari : http://www.yudasy.web.id
Labels:
Struktur Data
Langganan:
Posting Komentar (Atom)
0 comments:
Posting Komentar