STACK DENGAN LIST Defri Kurniawan defri kurniawandsn dinus
- Slides: 18
STACK DENGAN LIST Defri Kurniawan defri. kurniawan@dsn. dinus. ac. id
Struktur Data 2018
Struktur Data 2018
Struktur Data 2018
Struktur Data 2018
Struktur Data 2018
Struktur Data 2018
Struktur Data 2018
Struktur Data 2018
Definisi header #define true 1 #define false 0 #define boolean unsigned char #define Nil NULL #define Max. El 10 typedef int infotype; typedef struct t. Elmt. Stack *address; Struktur Data 2018
Definisi header (lanjutan) typedef struct t. Elmt. Stack { infotype info; address next; } Elmt. Stack; typedef struct { address TOP; } Stack; #define Info(P) (P)->info #define Next(P) (P)->next #define TOP(S) (S). TOP Struktur Data 2018
Operasi-operasi Stack. List void Create. Stack(Stack *S) { TOP(*S) = Nil; } boolean Is. Empty(Stack S) { return (TOP(S)==Nil); } boolean Is. Full(Stack S) { return (Nb. Elmt(S)==Max. El); } Struktur Data 2018
Alokasi & Dealokasi address Alokasi(infotype X) { address P; P = (address)malloc(sizeof(Elmt. Stack)); if(P!=Nil) { Info(P) = X; Next(P) = Nil; } else { P = Nil; } return P; } void Dealokasi(address *P) { free(*P); } Struktur Data 2018
Latihan �Jika Is. Empty() adalah fungsi pengecekkan Stack kosong, Is. Full() adalah fungsi pengecekkan Stack penuh. Dan alokasi(x) adalah prosedur untuk pemesanan ukuran memori beralamat P serta pemberian nilai X bertipe infotype dan elemen Next bernilai Nil (Null). Maka buatlah prosedur penambahan/push() dengan 3 (tiga) kondisi jika Is. Empty(), Is. Full dan selain kedua kondisi tersebut (else)! �Benar point 10, Mendekati point Struktur 5 Data 2018
Operasi Push void Push(Stack *S, infotype X) { address P; P = Alokasi(X); if(Is. Empty(*S)) { TOP(*S) = P; }else if(Is. Full(*S)) { print("Stack Fulln"); }else { Next(P) = TOP(*S); TOP(*S) = P; } } Struktur Data 2018
Latihan �Jika Is. Empty() adalah fungsi pengecekkan Stack kosong, dan dealokasi(x) adalah prosedur untuk pembebasan elemen Stack pada memori beralamat P. Maka buatlah prosedur penghapusan / pop() dengan menyertakan pengecekkan Is. Empty() dan prosedur dealokasi()! �Benar point 10, Mendekati point 5 Struktur Data 2018
Operasi Pop void Pop(Stack *S, infotype *X) { address P; if(Is. Empty(*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 2018
TERIMA KASIH Struktur Data 2018
- Defri kurniawan
- Dinus inside
- Contoh soal stack dan jawabannya
- Muhammad danang kurniawan
- Andi kurniawan adalah pemain
- Kurniawan hartanto
- Gsm tdma
- Anang mury kurniawan
- Stack smashing
- Stack and stack pointer
- Python stack and queue
- A list of undefined terms together with a list of axioms
- Singly vs doubly linked list
- Singly linked list vs doubly linked list
- List h shows account.
- List adalah
- Select list item list index too large
- Pengertian double linked list
- Eurocircuits altium