IF2030_Proc_11_ListRekursif

# terdefinisi type address terdefinisi type elmtlist

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

This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: an secara Rekursif (Notasi Algoritmik) (N Al KAMUS { List direpresentasi dg pointer } type infotype : ... { terdefinisi } type address : ... { terdefinisi } type ElmtList : < info : InfoType, f next : address > type List : address { Deklarasi nama untuk variabel kerja } L : List P : address { address untuk traversal } { Maka penulisan First(L) menjadi L Next(P), Info(P) tergantung representasi fisik yang digunakan } 11/16/2011 IF2030/Sem. 1 2011-2012 16 Struktur Data List untuk Pemrosesan secara Rekursif (Bahasa C, pointer) (B #define Nil NULL /* Selektor */ #define Info(P) (P)->info #define Next(P) (P)->next typedef int infotype; typedef struct tElmtlist *address; typedef struct tElmtlist { struct tElmtlist infotype info; address next; } ElmtList; /* Definisi list : */ /* List kosong : First(L) = Nil */ typedef address List; address List; 11/16/2011 IF2030/Sem. 1 2011-2012 17 Primitif Dasar: Pemeriksaan List Kosong Li • Notasi Algoritmik (rep. berkait) function IsEmpty (L : List) → boolean { Tes apakah sebuah list L kosong. Mengirimkan true jika list kosong, false jika tidak kosong } KAMUS LOKAL ALGORITMA → (L = Nil) • Bahasa C (rep. berkait dgn. pointer) boolean IsEmpty (List L) /* Tes apakah sebuah list L kosong. Mengirimkan true jika list kosong, false jika tidak kosong */ { /* Kamus Lokal */ */ /* Algoritma */ return (L == Nil); } 11/16/2011 IF2030/Sem. 1 2011-2012 18 Studi Kasus-1: PrintList • Notasi Algoritmik Algoritmik procedure Printlist (input L : List) { I.S. L terdefinisi } { F.S. Setiap elemen list diprint } KAMUS LOKAL ALGORITMA if (IsEmpty(L)) then...
View Full Document

## This document was uploaded on 03/15/2014 for the course IF 2030 at Institut Teknologi Bandung.

Ask a homework question - tutors are online