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
Selasa, 06 Desember 2011
Operasi – operasi pada List berpointer Ganda
Pendeklarasian pada program pascal :
Type
Info_Type = integer;
List = ^ElmList;
ElmList = Record
Info : Info_Type;
Sebelum, Berikut : List;
End;
a. Kunjungan pada setiap elemen :
Procedure SisipAwListGanda (var Kepala : List; P : List);
Begin
P^. Berikut := Kepala;
If Kepala <> Nil Then
Kepala^. Sebelum := P;
Kepala := P;
P^. Sebelum := Nil;
End;
c. Penyisipan sebagai elemen terakhir :
Procedure SisipAkListGanda (Var Kepala : List; P : List);
Begin
PencElemenAkhir (Kepala, Q); {Pemanggilan Prosedur PencElemen Akhir}
P^. Berikut := Nil;
P^. Sebelum := Q; {Q : Alamat elemen terakhir atau Nil}
If (Q <> Nil) then
Q^. Berikut := P;
End;
d. Penyisipan sebagai suksesor dari Q
Procedure SisipSesudahListGanda (var P : List; Q : List);
Begin
P^. Berikut := Q^. Berikut;
P^. Sebelum := Q;
If (Q^. Berikut <> Nil) Then
Q^. Berikut^. Sebelum := P;
Q^. Berikut := P;
End;
e. Penghapusan elemen pertama
Procedure HapusElmPtmListGanda (var Kepala : List; P : List);
Begin
If (Kepala <> Nil) then
Begin
P:= Kepala;
Kepala := Kepala^. Berikut;
Dispose (P);
If (Kepala <> Nil) Then {sisa tidak kosong}
Kepala^. Sebelum := Nil;
End;
End;
f. Penghapusan elemen terakhir
Procedure HapusElmAkhListGanda (var Kepala : List; P : List);
Var
Q : List;
Begin
If (Kepala <> Nil) then
Begin
If (Kepala^. Berikut = Nil) then
Begin
Dispose (Kepala);
Kepala := Nil;
End
Else
Begin
PencElemenAkhir(Kepala, Q);
P := Q^. Sebelum;
Dispose (Q);
P^. Berikut := Nil;
End;
End;
End;
Sumber dari : http://www.yudasy.web.id
Pendeklarasian pada program pascal :
Type
Info_Type = integer;
List = ^ElmList;
ElmList = Record
Info : Info_Type;
Sebelum, Berikut : List;
End;
a. Kunjungan pada setiap elemen :
- Pointer Sebelum tidak digunakan.
- Algoritma sama dengan Linked List pointer tunggal
Procedure SisipAwListGanda (var Kepala : List; P : List);
Begin
P^. Berikut := Kepala;
If Kepala <> Nil Then
Kepala^. Sebelum := P;
Kepala := P;
P^. Sebelum := Nil;
End;
c. Penyisipan sebagai elemen terakhir :
Procedure SisipAkListGanda (Var Kepala : List; P : List);
Begin
PencElemenAkhir (Kepala, Q); {Pemanggilan Prosedur PencElemen Akhir}
P^. Berikut := Nil;
P^. Sebelum := Q; {Q : Alamat elemen terakhir atau Nil}
If (Q <> Nil) then
Q^. Berikut := P;
End;
d. Penyisipan sebagai suksesor dari Q
Procedure SisipSesudahListGanda (var P : List; Q : List);
Begin
P^. Berikut := Q^. Berikut;
P^. Sebelum := Q;
If (Q^. Berikut <> Nil) Then
Q^. Berikut^. Sebelum := P;
Q^. Berikut := P;
End;
e. Penghapusan elemen pertama
Procedure HapusElmPtmListGanda (var Kepala : List; P : List);
Begin
If (Kepala <> Nil) then
Begin
P:= Kepala;
Kepala := Kepala^. Berikut;
Dispose (P);
If (Kepala <> Nil) Then {sisa tidak kosong}
Kepala^. Sebelum := Nil;
End;
End;
f. Penghapusan elemen terakhir
Procedure HapusElmAkhListGanda (var Kepala : List; P : List);
Var
Q : List;
Begin
If (Kepala <> Nil) then
Begin
If (Kepala^. Berikut = Nil) then
Begin
Dispose (Kepala);
Kepala := Nil;
End
Else
Begin
PencElemenAkhir(Kepala, Q);
P := Q^. Sebelum;
Dispose (Q);
P^. Berikut := Nil;
End;
End;
End;
Sumber dari : http://www.yudasy.web.id
Labels:
Struktur Data
Langganan:
Posting Komentar (Atom)
0 comments:
Posting Komentar