STACK DENGAN LIST
Defri Kurniawan
defri.kurniawan@dsn.dinus.ac.id
Struktur Data 2017
RENCANA KEGIATAN PERKULIAHAN SEMESTER
W Pokok Bahasan
1 ADT Stack
2 ADT Queue
3 List Linear
4 List Linear
5 List Linear
6 Representasi Fisik List Linear
7 Variasi List Linear
8 Ujian Tengah Semester
W Pokok Bahasan
9 Variasi List Linear
10 Double Linked List
11 Stack dengan Representasi List
12 Queue dengan Representasi List
13 List Rekursif
14 Pohon dan Pohon Biner
15 Multi List
16 Ujian Akhir Semester
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Struktur Data 2017
Operasi-operasi StackList
void CreateStack(Stack *S) {
TOP(*S) = Nil;
}
boolean IsEmpty(Stack S) {
return (TOP(S)==Nil);
}
boolean IsFull(Stack S) {
return (NbElmt(S)==MaxEl);
}
Struktur Data 2017
Alokasi
address Alokasi(infotype X) {
address P;
P = (address)malloc(sizeof(ElmtStack));
if(P!=Nil) {
Info(P) = X;
Next(P) = Nil;
} else {
P = Nil;
}
return P;
}
Struktur Data 2017
Quiz
 Buatlah operasi push() dan pop()
Struktur Data 2017
Operasi Push
void Push(Stack *S, infotype X) {
address P;
P = Alokasi(X);
if(IsEmpty(*S)) {
TOP(*S) = P;
}else if(IsFull(*S)) {
print("Stack Fulln");
}else {
Next(P) = TOP(*S);
TOP(*S) = P;
}
}
Struktur Data 2017
Operasi Pop
void Pop(Stack *S, infotype *X) {
address P;
if(IsEmpty(*S)) {
printf("Stack kosongn");
} else {
P = TOP(*S);
*X = Info(P);
if(Next(P)==Nil) {
TOP(*S) = Nil;
} else {
TOP(*S) = Next(TOP(*S));
}
Next(P) = Nil;
Dealokasi(&P);
}
}
Struktur Data 2017
TERIMA KASIH

week_11_-_Stack_dengan_List.pptx