Diktat_Prosedural_09_ADTRepresentasiListLinier

Tuliskanlah realisasi dari prosedur penambahan

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: asi elemen baru) c. Memusnahkan list, yaitu membuat sebuah list kosong, dan semua memori yang dipakai untuk elemen list dikembalikan ke sistem 8. Tuliskanlah realisasi dari prosedur penambahan berikut jika diimplementasi dengan pointer dan tabel berkait: procedure InsVFirst (input/output L : List, input X : InfoType) { I.S. List L mungkin kosong } { F.S. P dialokasi, sebuah adalah elemen pertama list L, beralamat P dengan Info(P)=X } { Insert sebuah elemen beralamat P dengan Info(P)=X sebagai elemen pertama dari list linier L yg mungkin kosong } procedure InsVAfter (input/output L : List, input XPrec, X : InfoType) { I.S. List L mungkin kosong } { F.S. P dialokasi, sebuah adalah elemen pertama list L, beralamat P dengan Info(P)=X } { Insert sebuah elemen beralamat P dengan Info(P)=X sebagai elemen sesudah elemen list beralamat Prec dengan info(Prec)=XPrec dari list linier L yg mungkin kosong } procedure InsVLast (input/output L : List, input X : InfoType) { I.S. List L mungkin kosong } { F.S. P dialokasi, sebuah adalah elemen terakhir list L, beralamat P dengan Info(P)=X } { Insert sebuah elemen beralamat P dengan Info(P)=X sebagai elemen terakhir dari list linier L yg mungkin kosong } 9. Tuliskanlah realisasi dari prosedur penghapusan elemen list sebagai berikut jika diimplementasi dengan pointer dan tabel berkait: procedure DelVFirst (input/output L : List, output X : InfoType) { I.S. List L tidak kosong } { F.S. Elemen pertama list L dihapus, dan didealokasi. Hasil penghapusan diimpan nilainya dalam X. List mungkin menjadi kosong. Jika tidak kosong, elemen pertama list yang baru adalah elemen sesudah elemen pertama yang lama. } procedure DelVLast (input/output L : List, output X : InfoType) { I.S. List L tidak kosong } { F.S. Elemen terakhir list L dihapus, dan didealokasi. Hasil penghapusan diimpan nilainya dalam X. List mungkin menjadi kosong. Jika tidak kosong, elemen pertama list yang baru adalah elemen sesudah elemen pertama yang lama. } procedure DelVAfter { I.S. List L tidak { F.S. Elemen list L List mungkin menjadi (input/output L : List, output X : InfoType) kosong } yang bernilai X dihapus, dan didealokasi. kosong. } Oleh: Inggriani Liem/Revisi bab oleh: Tim IF2030 sem. 1 2011-2012/Tgl. Revisi: 3 Okt 2011 9 Draft Diktat Struktur Data Hanya untuk digunakan di lingkungan Sekolah Teknik Elektro dan Informatika ITB ADT List Linier dengan Representasi Berkait (Pointer) dalam Bahasa C /* File : list1.h */ /* contoh ADT list berkait dengan representasi fisik pointer /* Representasi address dengan pointer */ /* infotype adalah integer */ #ifndef list1_H #define list1_H */ #include "boolean.h" #define #define #define #define typedef typedef typedef Nil NULL info(P) (P)->info next(P) (P)->next First(L) ((L).First) int infotype; struct tElmtlist *address; struct tElmtlist { infotype info; address next; } ElmtList; /* Definisi list : */ /* List kosong : First(L) = Nil */ /* Setiap elemen dengan address P dapat diacu info(P), Next(P) */ /* Elemen terakhir list : jika addressnya Last, maka Next(Last)=Nil */ typedef struct { address First; } List; /* PROTOTYPE */ /****************** TEST LIST KOSONG ******************/ boolean Lis...
View Full Document

Ask a homework question - tutors are online