+ All Categories
Home > Documents > 01 Single Stack [Compatibility Mode]

01 Single Stack [Compatibility Mode]

Date post: 24-Jun-2015
Category:
Upload: isma-dav-riel
View: 328 times
Download: 17 times
Share this document with a friend
Popular Tags:
105
Fakultas Teknologi Informasi Universitas Budi Luhur Universitas Budi Luhur K ikl Kurikulum 1
Transcript
Page 1: 01 Single Stack [Compatibility Mode]

Fakultas Teknologi Informasi

Universitas Budi LuhurUniversitas Budi Luhur

K ik lKurikulum

1

Page 2: 01 Single Stack [Compatibility Mode]

U m u m

2

Page 3: 01 Single Stack [Compatibility Mode]

Buku LiteraturBuku Literatur

3

Page 4: 01 Single Stack [Compatibility Mode]

Buku LiteraturBuku Literatur

4

Page 5: 01 Single Stack [Compatibility Mode]

Buku LiteraturBuku Literatur

5

Page 6: 01 Single Stack [Compatibility Mode]

materimateri

1. Stack

2. Queue

3 Linked List3. Linked List

4. Tree

5. Graph

6 Sea ch & So t6. Search & Sort

6

Page 7: 01 Single Stack [Compatibility Mode]

Pokok Pembahasan

. StackStac

. QueueQ

. Tree

. Graphp

7

Page 8: 01 Single Stack [Compatibility Mode]

struktur Peng-alokasi-an

Stack

memory

Satu StackQueueStack

Queuelinear Array

(statis)

dimensi

D

QueueTree

Queue

T

Dua dimensi Graph

Treenonlinear Linked-

List

LinearStackQueue

GraphList

(dinamis) NonLinear

TreeGraph

8

Page 9: 01 Single Stack [Compatibility Mode]

6 3 & 7 3STACK6.3 & 7.3NESTED LOOP

STACK

9

Page 10: 01 Single Stack [Compatibility Mode]

STACK( TUMPUKAN )( TUMPUKAN )

10

Page 11: 01 Single Stack [Compatibility Mode]

delete

insert

delete

A stack is an orderedcollection of items into whichnew items may be inserted and

7new items may be inserted andfrom which items may bedeleted at one end, called the

f h k

654top of the stack.

( Y did h L M h J A d A M

432

( Yedidyah L, Moshe J. A., and Aaron M. Tenenbaum; Data Structures Using C and C++)

1

11

Page 12: 01 Single Stack [Compatibility Mode]

1. Single Stack.Stack Tunggal, satu stack dalam satu collection

Nomor N U t

Stac ungga , satu stac a am satu co ct on

1.1 Ilustrasi Single Stack.NomorUrut Masuk(PUSH)

Nomor UrutKeluar (POP)

Buku-4

Buku-3

4

3

1

2

Top

Buku-2

Buku-1

2

1

3

4 Meja

12

Page 13: 01 Single Stack [Compatibility Mode]

Dalam struktur STACK digunakan istilah :Dalam struktur STACK, digunakan istilah :

- PUSH untuk : Simpan, atau Masuk, atau Insert, atau Tulis.

- POP untuk : Ambil, atau Keluar, atau Delete, atau Baca, atau Hapus

Prinsip atau Konsep prosesnya disebut :

L I F O ( Last In First Out )

13

Page 14: 01 Single Stack [Compatibility Mode]

1.2 Representasi Single Stack menggunakanArray Satu Dimensi.

misal n = 10

1.2.1 Ilustrasi Single Stack menggunakan Array Satu Dimensi

0 1 2 3 4 5 6 7 8 9

mn-1

25 12 17 10S[ ] 25 12 17 10S[ ]

Top#define n 10-

misal dibuat dengan :

Top X

3 ---int S[n];i

14

int Top, X;

Page 15: 01 Single Stack [Compatibility Mode]

0 1 2 3 4 5 6 7 8 9 n-1

25 12 17 10S[ ]PUSHPOP

Top

T X

3

Top X

Pertanyaan : dalam keadaan seperti sekarang

Kalau ada perintah PUSH ( Isi, Masuk, Simpan)maka akan diisi di elemen nomor : ?d k k l ?

15

dan Top akan menunjuk elemen nomor : ?

Page 16: 01 Single Stack [Compatibility Mode]

0 1 2 3 4 5 6 7 8 9 n-1

25 12 17 10S[ ]PUSHPOP

Top

T X

3

Top X

Pertanyaan : dalam keadaan seperti sekarang

Kalau ada perintah POP ( Keluar, Ambil)maka akan diambil isi elemen nomor : ?d k k l ?

16

dan Top akan menunjuk elemen nomor : ?

Page 17: 01 Single Stack [Compatibility Mode]

Ilustrasi Stack.

n-1

0 1 2 3 4 5 6 7 8 9

n 1

25 12 17 10S[ ]

Top

3

Top X

3

Diilustrasikan sebagai berikut :n 1

X X X XS[ ]0 1 2 3 4 5 6 7 8 9

n-1

17Top

Page 18: 01 Single Stack [Compatibility Mode]

LIFO (L t I Fi t O t)

1.2.2 Prinsip / Konsep Proses pada Stack

LIFO (Last In First Out)

1.2.3 Macam Proses pada Stack

a. AWAL (Inisialisasi)b. PUSH (Insert, Masuk, Simpan, Tulis)

POP (D l t K l A bil B / H )c. POP (Delete, Keluar, Ambil , Baca / Hapus)

18

Page 19: 01 Single Stack [Compatibility Mode]

void AWAL(void)

a) Proses AWAL

Catatan :void AWAL(void){

Top = -1;}

Untuk memudahkan pembuatanprogram, maka array untuk Stackdan beberapa variabel yangterkait dibuat bersifat Glabal

n-10 1 2 3 4 5 6 7 8 9

S[ ]

-1Top Top X

19

Page 20: 01 Single Stack [Compatibility Mode]

Algoritma dasaruntukun u

PUSH

20

Page 21: 01 Single Stack [Compatibility Mode]

0 1 2 3 4 5 6 7 8 9n-1

25 12 17 10S[ ]

Top3

Top X

3

Pertanyaan : dalam keadaan seperti sekarang

Kalau ada perintah PUSH (Isi, Masuk, Simpan)maka akan diisi di elemen nomor : ?d k k l ?

21

dan Top akan menunjuk elemen nomor : ?

Page 22: 01 Single Stack [Compatibility Mode]

0 1 2 3 4 5 6 7 8 9n-1

25 12 17 10S[ ]

Top

T X

3

Pertanyaan : dalam keadaan seperti sekarang

Top X

Kalau ada perintah PUSH (Isi, Masuk, Simpan)maka akan diisi di elemen nomor : 4d k k l 4

22

dan Top akan menunjuk elemen nomor : 4

Page 23: 01 Single Stack [Compatibility Mode]

Pilih algoritma yang benarSebelum nilai X diPUSH g y guntuk PUSH

a. Top = Top + 1;

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n-1Ke Stack

S[Top] = X;

b. S[Top] = X;Top X

3 15Top

[ ]

pTop = Top + 1;

c. Top = Top + 1;

Top X

n-1Setelah nilai X diPUSHKe Stack

X = S[Top];

d. X = S[Top];25 12 17 10 15S[ ]

0 1 2 3 4 5 6 7 8 9

pTop = Top + 1;

?Top X

4 15Top

23

p

Page 24: 01 Single Stack [Compatibility Mode]

A B Y dii i i b l A ?A = B; Yang diisi, variabel Aatau variabel B

?

25 17Sebelum :

A B

A BA = B;

d h ?A B

Sesudah : ?

24

Page 25: 01 Single Stack [Compatibility Mode]

A B Y dii i d l h i b l AA = B; Yang diisi adalah : variabel A

25 17Sebelum :

A B

A BA = B;

d h 17

A

17

B

Sesudah :

25

Page 26: 01 Single Stack [Compatibility Mode]

U t k i i l A[3]

17A0 1 2 3 4 5

Untuk mengisi elemen A[3]Pilih instruksi yang benar :

17A a. A[3] = X;

17b. X = A[3];

X

26

Page 27: 01 Single Stack [Compatibility Mode]

Pilih algoritma yang benarSebelum nilai X diPUSH g y guntuk PUSH

a. S[Top] = X;T p T p 1;

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n-1Ke Stack

Top = Top + 1;S[T ] X

b.

Top = Top + 1;

Top X

3 15Top

[ ]

S[Top] = X;

c. Top = Top + 1;

Top X

n-1Setelah nilai X diPUSHKe Stack

X = S[Top];

d. X = S[Top];25 12 17 10 15S[ ]

0 1 2 3 4 5 6 7 8 9

pTop = Top + 1;

?Top X

4 15Top

27

p

Page 28: 01 Single Stack [Compatibility Mode]

Pilih algoritma yang benarSebelum nilai X diPUSH g y guntuk PUSH

a. S[Top] = X;T p T p 1;

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n-1Ke Stack

Top = Top + 1;S[T ] X

b.

Top = Top + 1;

Top X

3 15Top

[ ]

S[Top] = X;

c. Top = Top + 1;

Top X

n-1Setelah nilai X diPUSHKe Stack

X = S[Top];

d. X = S[Top];25 12 17 10 15S[ ]

0 1 2 3 4 5 6 7 8 9

pTop = Top + 1;

Top X

4 15Top

28

p

Page 29: 01 Single Stack [Compatibility Mode]

Sebelum nilai X diPUSH

Untuk PUSHAlgoritma yang benar25 12 17 10S[ ]

0 1 2 3 4 5 6 7 8 9

n-1Ke Stack

Top = Top + 1;S[Top] = X;Top X

3 15Top

[ ]

pTop X

n-1Setelah nilai X diPUSHKe Stack

25 12 17 10 15S[ ]

0 1 2 3 4 5 6 7 8 9

Top X

4 15Top

29

p

Page 30: 01 Single Stack [Compatibility Mode]

Algoritma PUSH yang benar : Top = Top + 1;S[Top] = X;

3 1525 12 17 10S[ ]

Sebelum :0 1 2 3 4 5 6 7 8 9

n-1

Top XTop

5 7 0S[ ]

n-1

25 12 17 10S[ ] 4 15

Dengan : Top = Top + 1;0 1 2 3 4 5 6 7 8 9

n-1

TopTop X

S d h

4 1525 12 17 10 15S[ ]

Dengan : S[Top] = X;Sesudah :0 1 2 3 4 5 6 7 8 9

n-1

30Top X

Top

Page 31: 01 Single Stack [Compatibility Mode]

Algoritma PUSH yang SALAH : S[Top] = X;Top = Top + 1;

3 1525 12 17 10S[ ]

Sebelum :0 1 2 3 4 5 6 7 8 9

n-1

Top XTop

5 7 0S[ ]

n-1

25 12 17 15S[ ] 3 15

Dengan : S[Top] = X;0 1 2 3 4 5 6 7 8 9

n-1

TopTop X

S d h

4 1525 12 17 15S[ ]

Dengan : Top = Top + 1;Sesudah :0 1 2 3 4 5 6 7 8 9

n-1

31Top X

Top

Page 32: 01 Single Stack [Compatibility Mode]

Algoritma dasar untuk PUSHg

Top = Top + 1;S[Top] = X;S[Top] = X;

Top+= 1;atau : Top+= 1;S[Top] = X;

Top++;S[Top] = X;

atau :

S[++Top] = X;atau :

32

S[ Top] X;

Page 33: 01 Single Stack [Compatibility Mode]

Algoritma dasaruntukun u

POP

33

Page 34: 01 Single Stack [Compatibility Mode]

0 1 2 3 4 5 6 7 8 9n-1

25 12 17 10S[ ]

Top3

Top X

3

Pertanyaan : dalam keadaan seperti sekarang

Kalau ada perintah POP ( Keluar, Ambil)maka akan diambil isi elemen nomor : ?d l h k k l ?

34

dan setelah itu Top akan menunjuk elemen nomor : ?

Page 35: 01 Single Stack [Compatibility Mode]

0 1 2 3 4 5 6 7 8 9n-1

25 12 17 10S[ ]

Top3

Top X

3

Pertanyaan : dalam keadaan seperti sekarang

Kalau ada perintah POP ( Keluar, Ambil)maka akan diambil isi elemen nomor : 3d l h k k l 2

35

dan setelah itu Top akan menunjuk elemen nomor : 2

Page 36: 01 Single Stack [Compatibility Mode]

Untuk POP,Pilih l ritm n b n rS b l POP Pilih algoritma yang benar

a. X = S[Top];Top = Top - 1;

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n-1Sebelum POP

b. Top = Top - 1;X S[T ]

Top = Top - 1;

Top X

3Top

[ ]

Top = Top - 1;S[Top] = X;

c.

X = S[Top];Top X

n-1Setelah POPS[Top] = X;

S[Top] = X;T T 1

d.25 12 17S[ ]

0 1 2 3 4 5 6 7 8 9

Top = Top - 1;

?Top X

2 10Top

36

?p

Page 37: 01 Single Stack [Compatibility Mode]

Untuk POP,Pilih l ritm n b n rS b l POP Pilih algoritma yang benar

a. X = S[Top];Top = Top - 1;

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n-1Sebelum POP

b. Top = Top - 1;X S[T ]

Top = Top - 1;

Top X

3Top

[ ]

Top = Top - 1;S[Top] = X;

c.

X = S[Top];Top X

n-1Setelah POPS[Top] = X;

S[Top] = X;T T 1

d.25 12 17S[ ]

0 1 2 3 4 5 6 7 8 9

Top = Top - 1;

Top X

2 10Top

37

p

Page 38: 01 Single Stack [Compatibility Mode]

S b l POPUntuk POPAlgoritma yang benar25 12 17 10S[ ]

0 1 2 3 4 5 6 7 8 9

n-1Sebelum POP

X = S[Top];Top = Top - 1;Top X

3Top

[ ]

p pTop X

n-1Setelah POP

25 12 17S[ ]

0 1 2 3 4 5 6 7 8 9

Top X

2 10Top

38

p

Page 39: 01 Single Stack [Compatibility Mode]

Pertanyaan :S t l h 10 di i di X

0 1 2 3 4 5 6 7 8 9

n-1Sebelum POP

Setelah 10 disimpan di Xapakah nilai 10masih ada dalam S[3] ?3Top

25 12 17 10S[ ]

Jawab :Top X

p

0 1 2 3 4 5 6 7 8 9

n-1Isi X

Pertanyaan :Setelah Top dipindahkan 3 10Top

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

Setelah Top dipindahkan menunjuk S[2] apakah nilai 10m ih d d l m S[3] ?0 1 2 3 4 5 6 7 8 9

n-1Setelah POP

TopTop X

masih ada dalam S[3] ?Jawab :25 12 17S[ ]

0 1 2 3 4 5 6 7 8 9

39Top X

2 10Top

Page 40: 01 Single Stack [Compatibility Mode]

Pertanyaan :S t l h 10 di i di X

0 1 2 3 4 5 6 7 8 9

n-1Sebelum POP

Setelah 10 disimpan di Xapakah nilai 10masih ada dalam S[3] ?3Top

25 12 17 10S[ ]

Jawab : masih adaTop X

p

0 1 2 3 4 5 6 7 8 9

n-1Isi X

Pertanyaan :Setelah Top dipindahkan 3 10Top

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

Setelah Top dipindahkan menunjuk S[2] apakah nilai 10m ih d d l m S[3] ?0 1 2 3 4 5 6 7 8 9

n-1Setelah POP

TopTop X

masih ada dalam S[3] ?Jawab : masih adatapi untuk keperluan

25 12 17S[ ]

0 1 2 3 4 5 6 7 8 9

40

tapi untuk keperluan ilustrasi, nilainya dihapus

Top X

2 10Top

Page 41: 01 Single Stack [Compatibility Mode]

Algoritma POP yang benar : X = S[Top];Top = Top - 1;n-1Sebelum POP p p

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n 1Sebelum POP

X

3

TopTop X

Kita Ulangi

41

Page 42: 01 Single Stack [Compatibility Mode]

Algoritma POP yang benar : X = S[Top];Top = Top - 1;n-1Sebelum POP

X

3

p p

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n 1Sebelum POP

Dengan : X=S[Top];

Top XTop

0 1 2 3 4 5 6 7 8 9

n-1

T

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

Top X

3 10

Topp

42

Page 43: 01 Single Stack [Compatibility Mode]

Algoritma POP yang benar : X = S[Top];Top = Top - 1;n-1Sebelum POP

X

3

p p

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n 1Sebelum POP

Dengan : X=S[Top];

Top XTop

0 1 2 3 4 5 6 7 8 9

n-1

T

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

Top X

3 10

Topp

Dengan : Top = Top -1;0 1 2 3 4 5 6 7 8 9

n-1

25 12 17S[ ]0 1 2 3 4 5 6 7 8 9

Top X

2 10

43

Topop

Page 44: 01 Single Stack [Compatibility Mode]

Algoritma dasar untuk POPg

X = S[Top];Top = Top - 1;Top = Top 1;

atau : X = S[Top];[ p]Top-=1;

atau : X = S[Top];Top--;

atau : X = S[Top--];

44

Page 45: 01 Single Stack [Compatibility Mode]

Algoritma POP yang SALAH : Top = Top - 1;X = S[Top];

Sebelum POP

X

325 12 17 10S[ ]

Sebelum POP

Dengan : Top = Top -1;

Top XTop

0 1 2 3 4 5 6 7 8 9

n-1

T

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

Top X

2

Topp

Dengan : X = S[Top];0 1 2 3 4 5 6 7 8 9

n-1

25 12 10S[ ]0 1 2 3 4 5 6 7 8 9

Top X

2 17

45

Topop

Page 46: 01 Single Stack [Compatibility Mode]

b) Proses PUSH

void PUSH( void){Top = Top + 1;

Catatan :

Semua variabel dibuatS[Top] = X;

}

Semua variabel dibuatbersifat GLOBAL

c) Proses POP

void POP(void){

)

{X = S[Top]; Top = Top - 1;

}

46

}

Page 47: 01 Single Stack [Compatibility Mode]

#include<stdio.h>void AWAL (void);void PUSH(void);

void AWAL(void){ Top = -1;void PUSH(void);

void POP(void);define n 10int S[n];

Top = -1;}

void PUSH (void){ int Top, X;

void main( ){ AWAL( );

{ Top = Top + 1;S[top] = X;

}{ AWAL( );---

f(“%i” &X)

void POP (void){ X = S[top];

Top = Top - 1;}scanf(“%i”, &X);

PUSH();--

}

S m i b l b if t-POP( );printf(“%i”, X);

Semua variabel bersifatGLOBAL

47

--

}

Page 48: 01 Single Stack [Compatibility Mode]

Ilustrasi Stack.

n-1

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

Top X

3Top

Diilustrasikan sebagai berikut :g

0 1 2 3 4 5 6 7 8 9

n-1

Top

X X X XS[ ]

48

Top

Page 49: 01 Single Stack [Compatibility Mode]

1.2.4 Kondisi Stack.

a. KOSONG

b. PENUH

c. BISA DIISI

d. ADA ISINYA

49

Page 50: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

a KOSONGa. KOSONG

b. PENUH

a ya

c. BISA DIISIawan

nya

lawa

nny

d. ADA ISINYA

l

50

Page 51: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondisi Stack :n-1

a. KOSONG

b. PENUH

0 1 2 3 4 5 6 7 8 9 n 1

1

c. BISA DIISI

d. ADA ISINYA

Top

d. ADA ISINYA

X X X X20 1 2 3 4 5 6 7 8 9

n-1

Top

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

51Top

Page 52: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONGG b ?

0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH

Gambar : ?

?

Top

c. BISA DIISI

Gambar : ?

?X X X X20 1 2 3 4 5 6 7 8 9

n-1

d ADA ISINYA

Gambar : ?Top

d. ADA ISINYAGambar : ?

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

52Top

Page 53: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG1

0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH

Gambar :

?

1Top

c. BISA DIISI

Gambar : ?

?X X X X20 1 2 3 4 5 6 7 8 9

n-1

d ADA ISINYA

Gambar : ?Top

d. ADA ISINYAGambar : ?

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

53Top

Page 54: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG1

0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH

Gambar : 1

3

Top

c. BISA DIISI

Gambar :

?

3

X X X X20 1 2 3 4 5 6 7 8 9

n-1

d ADA ISINYA

Gambar : ?Top

d. ADA ISINYAGambar : ?

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

54Top

Page 55: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG1

0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH

Gambar : 1

3

Top

c. BISA DIISI

Gambar : 3

X X X X20 1 2 3 4 5 6 7 8 9

n-1

d ADA ISINYA

Gambar : 1 2Top

d. ADA ISINYAGambar : ?

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

55Top

Page 56: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG1

0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH

Gambar : 1

3

Top

c. BISA DIISI

Gambar : 3

X X X X20 1 2 3 4 5 6 7 8 9

n-1

d ADA ISINYA

Gambar : 1 2Top

d. ADA ISINYAGambar : 2 3

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

56Top

Page 57: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG : ?1

cirinya0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH : ?

1Top

0 1 2 3 4 5 6 7 8 9 n-1

c. BISA DIISI : ?

3

Top

X X X X2

d ADA ISINYA : ?

1 2Top

0 1 2 3 4 5 6 7 8 9 n-1

d. ADA ISINYA : ?2 3

Top

X X X X X X X X X X3

57

Top

Page 58: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG : Top = -11

cirinya0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH : ?

1Top

0 1 2 3 4 5 6 7 8 9 n-1

c. BISA DIISI : ?

3

Top

X X X X2

d ADA ISINYA : ?

1 2Top

0 1 2 3 4 5 6 7 8 9 n-1

d. ADA ISINYA : ?2 3

Top

X X X X X X X X X X3

58

Top

Page 59: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG : Top = -11

cirinya0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH : Top = n-1

1Top

0 1 2 3 4 5 6 7 8 9 n-1

c. BISA DIISI : ?

3

Top

X X X X2

d ADA ISINYA : ?

1 2Top

0 1 2 3 4 5 6 7 8 9 n-1

d. ADA ISINYA : ?2 3

Top

X X X X X X X X X X3

59

Top

Page 60: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG : Top = -11

cirinya0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH : Top = n-1

1Top

0 1 2 3 4 5 6 7 8 9 n-1

c. BISA DIISI : Top < n-1

3

Top

X X X X2

d ADA ISINYA : ?

1 2Top

0 1 2 3 4 5 6 7 8 9 n-1

d. ADA ISINYA : ?2 3

Top

X X X X X X X X X X3

60

Top

Page 61: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

Kondis Stack :n-1

a. KOSONG : Top = -11

cirinya0 1 2 3 4 5 6 7 8 9 n 1

1

b. PENUH : Top = n-1

1Top

0 1 2 3 4 5 6 7 8 9 n-1

c. BISA DIISI : Top < n-1

3

Top

X X X X2

d ADA ISINYA : Top > 1

1 2Top

0 1 2 3 4 5 6 7 8 9 n-1

d. ADA ISINYA : Top > -12 3

Top

X X X X X X X X X X3

61

Top

Page 62: 01 Single Stack [Compatibility Mode]

Kondisi Stack.

n-10 1 2 3 4 5 6 7 8 9

n 1

X X X X

Top

Kondis Stack :

a. KOSONG

cirinya

Top = -1

b. PENUH

Top = 1

Top = n-1

c. BISA DIISI

d. ADA ISINYA

Top < n-1

Top > -1

62

d. ADA ISINYA Top > 1

Page 63: 01 Single Stack [Compatibility Mode]

Kondisi Stack c i r i Ilustrasi gambar

1.2.4 Kondisi Stack.

Kondisi Stack (posisi Top) Ilustrasi gambar

a.b.

KOSONG tak ada isinyaPENUH tak bisa diisi lagi

Top = -1Top = n-1

Gambar 1Gambar 3

c.d.

BISA DIISI (kebalikan dari PENUH)ADA ISINYA (kebalikan dari KOSONG)

Top < n-1Top > -1

Gambar 1 dan 2Gambar 2 dan 3

n-1

10 1 2 3 4 5 6 7 8 9

n-1

X X X XTop

20 1 2 3 4 5 6 7 8 9

Top

X X X X X X X X X X30 1 2 3 4 5 6 7 8 9

n-1

63Top

Page 64: 01 Single Stack [Compatibility Mode]

1.2.5 Algoritma PUSH dan POP yang lengkap.

64

Page 65: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

Bila ada instruksi PUSH0 1 2 3 4 5 6 7 8 9

n-1

Bila ada instruksi PUSHmaka akan d isi di elemennomor : ?

Top

X X X X

Top

65

Page 66: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

Bila ada instruksi PUSH0 1 2 3 4 5 6 7 8 9

n-1

Bila ada instruksi PUSHmaka akan d isi di elemennomor : ?

Top

X X X X

Top

n-1Bila ada instruksi PUSHmaka akan d isi di elemennomor : 4

X X X X

0 1 2 3 4 5 6 7 8 9

Top

66

Page 67: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

Bila ada instruksi PUSH0 1 2 3 4 5 6 7 8 9

n-1

Bila ada instruksi PUSHmaka akan diisi di elemennomor : 4

Top

X X X X

Top

n-1

Dalam kondisi PENUHBolehkah melakukan PUSH ?X X X X X X X X X X

0 1 2 3 4 5 6 7 8 9

Jawab : ?Top

67

Page 68: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

Bila ada instruksi PUSH0 1 2 3 4 5 6 7 8 9

n-1

Bila ada instruksi PUSHmaka akan d isi di elemennomor : 4

Top

X X X X

Top

n-1

Dalam kondisi PENUHBolehkah melakukan PUSH ?X X X X X X X X X X

0 1 2 3 4 5 6 7 8 9

Jawab : TIDAK BOLEHTop

68

Page 69: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

Ilustrasi Stack

0 1 2 3 4 5 6 7 8 9

n-1

Top

X X X X

Bila Stack PENUH, maka Tidak Boleh melakukan PUSHsehingga sebelum PUSH

Top

sehingga, sebelum PUSH,perlu dioeriksa apakah Stack dalam keadaan :

a. apakah KOSONGpb. apakah PENUHc. apakah BISA DIISId k h ADA ISINYA

?

69

d. apakah ADA ISINYA

Page 70: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

Ilustrasi Stack

0 1 2 3 4 5 6 7 8 9

n-1

Top

X X X X

Bila BISA DIISI silahkan PUSH

b l k ( l ) jangan PUSH

Top

sebaliknya (else) jangan PUSH

Bila PENUH jangan PUSH

sebaliknya (else) silahkan PUSH

70

Page 71: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

void PUSH(void){ if ( BISA DIISI )

{ Top = Top + 1;{ p p ;S[Top] = X;

}elseprintf( “Stack Penuh”);

}

71

Page 72: 01 Single Stack [Compatibility Mode]

a. Algoritma yang lengkap untuk proses PUSH

void PUSH(void){ if ( Top < n-1 )

{ Top = Top + 1;

Bila BISA DIISI

lakukan PUSH{ p p ;S[Top] = X;

}else

lakukan PUSH

printf( “Stack Penuh”);}

void PUSH(void){ if ( Top == n-1 )

printf( “Stack Penuh”);

atau Bila PENUH

j PUSHprintf( Stack Penuh );else

{ Top = Top + 1;S[Top] = X;

jangan PUSH

elselakukan PUSH

72

}}

u H

Page 73: 01 Single Stack [Compatibility Mode]

b. Algoritma yang lengkap untuk proses POP

void POP(void)void POP(void){if (Top > -1 ){ X = S[Top];

Bila ADA ISINYA

lakukan POPX S[Top];Top = Top-1;

}elseprintf(“Stack Kosong”);printf( Stack Kosong );

}

Algoritma yang lengkap untuk proses POP dengan ‘logika terbalik’atau :

void POP(void){if ( Top == -1 )

printf(“Stack Kosong”);Bila KOSONG

jangan POPprintf( Stack Kosong );else{ X = S[Top];Top = Top - 1;

jangan POP

elselakukan POP

73

Top = Top 1;}

}

lakukan POP

Page 74: 01 Single Stack [Compatibility Mode]

1.2.6 Contoh Soal PUSH dan POP .

Baca sendiri di diktat

74

Page 75: 01 Single Stack [Compatibility Mode]

1.3 Aplikasi Stack.

Memeriksa kelengkapan pasangan kurung buka dan kurung tutup suatu arithmetic statement

1.3.1.

A + B * ( C - D) / ( E + F ) BENAR

A + B * ( C - D / ( E + F ) SALAH

Merobah (konversi) bentuk INFIX menjadi bentuk POSTFIX1.3.2.

INFIX POSTFIXA + B + C * D

A + (B + C) * D

A B + C D * +

A B C + D * +

INFIX POSTFIX

Mencatat Return Address oleh Operating System sewaktu menjalankan sebuah program pada pelaksanaan call suatu function

1.3.3.

75

call suatu function.

Page 76: 01 Single Stack [Compatibility Mode]

1.4 Pointer sebagai penunjuk Stack.

a. Menyiapkan Stack dan Pointer :n-1

0 1 2 3 4 5 6 7 8 9 10

BatasAtasTop

Dasar

define n 11-int S[n], *Top, *BatasAtas, *Dasar--Dasar = &S[-1];Top = &S[-1];

76

p [ ];BatasAtas = &S[n-1];

Page 77: 01 Single Stack [Compatibility Mode]

n0 1 2 3 4 5 6 7 8 9 10

BatasAtasTop

Dasar

a. Algoritma untuk PUSHif(Top < BatasAtas)if(Top < BatasAtas)

Top++; *Top = X;

elseprintf(“Stack Penuh);

b. Algoritma untuk POPif(Top > Dasar)

X = *Top;Top--;

l

77

elseprintf(“Stack Penuh);

Page 78: 01 Single Stack [Compatibility Mode]

1.5 Representasi Stack menggunakan structure.Perhatikan contoh berikut ini :

a. Menyiapkan Stack.

#define MAXSTACK 10

typedef char ItemType; tipe : char

typedef struct StackTag {int Top;ItemType S[MAXSTACK]; dibuat 10 elemenyp [ ];

} StackType; S[0] sampai dengan S[9]

b Initialisasib. Initialisasi.

void Intitialize(StackType *P ){ P->Top = -1; }

78

Page 79: 01 Single Stack [Compatibility Mode]

1.5 Representasi Stack menggunakan structure.Perhatikan contoh berikut ini :

c. Proses PUSH.

d P H( k *P)void PUSH(ItemType item, StackType *P){ if(P->Top >= MAXSTACK-1)

printf(“Stack Penuh”);elseelse

P->entry[++P->Top] = item;

d. Proses POP.

void POP(ItemType *Q, StackType *P)yp yp{ if(P->Top <= -1)

printf(“Stack Kosong”);else

*Q P S[P T ]79

*Q = P->S[P->Top--];}

Page 80: 01 Single Stack [Compatibility Mode]

X X X X

0 1 2 3 4 5 6 n-1 1.6 Soal Latihan Mandiri.

Top

Soal-I. Untuk Stack yang diilustrasikan pada Gambar diatas :. Un u y ng u n p G m

a. Kosongb. Penuh

1. Sebutkan ciri bahwa Stack :

2. Tulis algoritma dasar untuk:c. Bisa diisid. Ada isinya

a. PUSHb. POP

3. Tulis algoritma yang lengkap untuk: a. PUSHg y g g pb. POP

4. Tulis program (penggalan program) untuk menginput data melaluikeyboard satu persatu dan mem Push data tersebut ke Stack

5. Tulis program (penggalan program) untuk mengeluarkan (POP) isi Stack satu per satu dan mencetaknya sampai Stack menjadi

y p m msampai Stack penuh tak bisa diisi lagi.

80

Stack satu per satu dan mencetaknya, sampai Stack menjadi kosong.

Page 81: 01 Single Stack [Compatibility Mode]

6. Bila Stack berisi bilangan integer, maka susun algoritma untukmenghitung dan mencetak total isi Stack tanpa menghapus isiStack.

7. Dianggap tempat yang tersedia mesih lebih dari 10 tempat. Tulisprogram (penggalan program) untuk menginput sebanyak 10 buahdata melalui keyboard satu persatu dan mem Push data tersebut keStack

8. Dipastikan stack terisi lebih dari 10 elemen. Tulis program(penggalan program) untuk mengeluarkan (POP) isi stack sebanyak 10elemen satu per satu dan mencetaknya ke layar

Stack.

elemen, satu per satu dan mencetaknya ke layar.

81

Page 82: 01 Single Stack [Compatibility Mode]

6 Bila Stack berisi bilangan integer, maka susun6. g g ,algoritma untuk menghitung dan mencetak totalisi Stack tanpa menghapus isi Stack.

82

Page 83: 01 Single Stack [Compatibility Mode]

6 Bila Stack berisi bilangan integer, maka susun6. g g ,algoritma untuk menghitung dan mencetak totalisi Stack tanpa menghapus isi Stack.

83

Page 84: 01 Single Stack [Compatibility Mode]

6 Bila Stack berisi bilangan integer, maka susun6. g g ,algoritma untuk menghitung dan mencetak totalisi Stack tanpa menghapus isi Stack.

25 12 17 10S[ ]0 1 2 3 4 5 6 7 8 9

n-1

T X

3Top

S[ ]

64

Top X Total

84

Page 85: 01 Single Stack [Compatibility Mode]

7. Dianggap tempat yang tersedia mesih lebih dari 10t t T li ( l ) t ktempat. Tulis program (penggalan program) untukmenginput sebanyak 10 buah data melalui keyboardsatu persatu dan mem Push data tersebut ke Stack.

85

Page 86: 01 Single Stack [Compatibility Mode]

7. Dianggap tempat yang tersedia mesih lebih dari 10t t T li ( l ) t ktempat. Tulis program (penggalan program) untukmenginput sebanyak 10 buah data melalui keyboardsatu persatu dan mem Push data tersebut ke Stack.

86

Page 87: 01 Single Stack [Compatibility Mode]

7. Dianggap tempat yang tersedia mesih lebih dari 10t t T li ( l ) t ktempat. Tulis program (penggalan program) untukmenginput sebanyak 10 buah data melalui keyboardsatu persatu dan mem Push data tersebut ke Stack.

0 1 2 3 4 5 6 n-1

X X X X

Top

X X X X

3

Top X

3

87

Page 88: 01 Single Stack [Compatibility Mode]

8. Dipastikan stack terisi lebih dari 10 elemen. Tulisprogram (penggalan program) untuk mengeluarkan(POP) isi stack sebanyak 10 elemen, satu per satudan mencetaknya ke layar.y y

88

Page 89: 01 Single Stack [Compatibility Mode]

8. Dipastikan stack terisi lebih dari 10 elemen. Tulisprogram (penggalan program) untuk mengeluarkan(POP) isi stack sebanyak 10 elemen, satu per satudan mencetaknya ke layar.y y

89

Page 90: 01 Single Stack [Compatibility Mode]

8. Dipastikan stack terisi lebih dari 10 elemen. Tulisprogram (penggalan program) untuk mengeluarkan(POP) isi stack sebanyak 10 elemen, satu per satudan mencetaknya ke layar.y y

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n-1

X X X X X X X X X X X X X X X

Top

X X X X X X X X X X X X X X X

14

Top X

14

90

Page 91: 01 Single Stack [Compatibility Mode]

9. Tulis program (penggalan program) untuk menginput melalui keyboardsatu persatu dan mem Push data tersebut ke Stack. Bila tempat yangtersedia masih cukup untuk menampung 10 data baru maka data yangtersedia masih cukup untuk menampung 10 data baru, maka data yangdiinput dan di push sebanyak 10 buah data. Tapi bila tempat yangtersedia kurang dari 10 tempat, maka cukup menginput dan mem Pushsebanyak tempat yang tersedia, sampai stack penuh.

10. Tulis program (penggalan program) untuk mengeluarkan (POP) isi10. Tulis program (penggalan program) untuk mengeluarkan (POP) isistack satu persatu dan mencetaknya ke layar. Bila stack berisi 10elemen atau lebih dari 10 elemen, maka keluarkan dan cetaksebanyak 10 elemen. Tapi bila isi stack kurang dari 10 elemen, makak lu k n s mu isi st ck s mp i st ck m nj di k s nkeluarkan semua isi stack, sampai stack menjadi kosong.

91

Page 92: 01 Single Stack [Compatibility Mode]

9. Tulis program (penggalan program) untuk menginputmelalui keyboard satu persatu dan mem Push datamelalui keyboard satu persatu dan mem Push datatersebut ke Stack. Bila tempat yang tersedia masihcukup untuk menampung 10 data baru, maka datayang diinput dan di push sebanyak 10 buah data Tapiyang diinput dan di push sebanyak 10 buah data. Tapibila tempat yang tersedia kurang dari 10 tempat,maka cukup menginput dan mem Push sebanyaktempat yang tersedia, sampai stack penuh.

92

Page 93: 01 Single Stack [Compatibility Mode]

9. Tulis program (penggalan program) untuk menginputmelalui keyboard satu persatu dan mem Push datamelalui keyboard satu persatu dan mem Push datatersebut ke Stack. Bila tempat yang tersedia masihcukup untuk menampung 10 data baru, maka datayang diinput dan di push sebanyak 10 buah data Tapiyang diinput dan di push sebanyak 10 buah data. Tapibila tempat yang tersedia kurang dari 10 tempat,maka cukup menginput dan mem Push sebanyaktempat yang tersedia, sampai stack penuh.

93

Page 94: 01 Single Stack [Compatibility Mode]

9. Tulis program (penggalan program) untuk menginputmelalui keyboard satu persatu dan mem Push datamelalui keyboard satu persatu dan mem Push datatersebut ke Stack. Bila tempat yang tersedia masihcukup untuk menampung 10 data baru, maka datayang diinput dan di push sebanyak 10 buah data Tapiyang diinput dan di push sebanyak 10 buah data. Tapibila tempat yang tersedia kurang dari 10 tempat,maka cukup menginput dan mem Push sebanyaktempat yang tersedia, sampai stack penuh.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n-1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n 1

X X X X X X X X X X X X X X X

Top

Top X

14

94

p

Page 95: 01 Single Stack [Compatibility Mode]

9. Tulis program (penggalan program) untuk menginputmelalui keyboard satu persatu dan mem Push datamelalui keyboard satu persatu dan mem Push datatersebut ke Stack. Bila tempat yang tersedia masihcukup untuk menampung 10 data baru, maka datayang diinput dan di push sebanyak 10 buah data Tapiyang diinput dan di push sebanyak 10 buah data. Tapibila tempat yang tersedia kurang dari 10 tempat,maka cukup menginput dan mem Push sebanyaktempat yang tersedia, sampai stack penuh.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n-1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n 1

X X X X X X X X

Top

Top X

7

95

p

Page 96: 01 Single Stack [Compatibility Mode]

10.Tulis program (penggalan program) untukmengeluarkan (POP) isi stack satu persatu danmengeluarkan (POP) isi stack satu persatu danmencetaknya ke layar. Bila stack berisi 10 elemenatau lebih dari 10 elemen, maka keluarkan dan cetaksebanyak 10 elemen Tapi bila isi stack kurang darisebanyak 10 elemen. Tapi bila isi stack kurang dari10 elemen, maka keluarkan semua isi stack, sampaistack menjadi kosong.

96

Page 97: 01 Single Stack [Compatibility Mode]

10.Tulis program (penggalan program) untukmengeluarkan (POP) isi stack satu persatu danmengeluarkan (POP) isi stack satu persatu danmencetaknya ke layar. Bila stack berisi 10 elemenatau lebih dari 10 elemen, maka keluarkan dan cetaksebanyak 10 elemen Tapi bila isi stack kurang darisebanyak 10 elemen. Tapi bila isi stack kurang dari10 elemen, maka keluarkan semua isi stack, sampaistack menjadi kosong.

97

Page 98: 01 Single Stack [Compatibility Mode]

10.Tulis program (penggalan program) untukmengeluarkan (POP) isi stack satu persatu danmengeluarkan (POP) isi stack satu persatu danmencetaknya ke layar. Bila stack berisi 10 elemenatau lebih dari 10 elemen, maka keluarkan dan cetaksebanyak 10 elemen Tapi bila isi stack kurang darisebanyak 10 elemen. Tapi bila isi stack kurang dari10 elemen, maka keluarkan semua isi stack, sampaistack menjadi kosong.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n-1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n 1

X X X X X X X X

Top

Top X

7

98

p

Page 99: 01 Single Stack [Compatibility Mode]

10.Tulis program (penggalan program) untukmengeluarkan (POP) isi stack satu persatu danmengeluarkan (POP) isi stack satu persatu danmencetaknya ke layar. Bila stack berisi 10 elemenatau lebih dari 10 elemen, maka keluarkan dan cetaksebanyak 10 elemen Tapi bila isi stack kurang darisebanyak 10 elemen. Tapi bila isi stack kurang dari10 elemen, maka keluarkan semua isi stack, sampaistack menjadi kosong.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n-1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 n 1

X X X X X X X X X X X X X X X

Top

Top X

14

99

p

Page 100: 01 Single Stack [Compatibility Mode]

100

Page 101: 01 Single Stack [Compatibility Mode]

Sudah ada sebuah stack yang dibuat dengan1int S[n], dengan variabel Top bertipe intsebagai penunjuk posisi isi stack yang ‘palingatas’ Tidak diketahui apakah stack tersebutatas’. Tidak diketahui apakah stack tersebutdalam keadaan kosong, penuh, bisa diisi, atauada isinya.yTulis program (penggalan program) untukmenginput data melalui keyboard satu persatud P h d t t b t k St k (bildan mem Push data tersebut ke Stack (bilastack tersebut bisa diisi) sampai Stack penuhtak bisa diisi lagi.

101

tak bisa diisi lagi.

Page 102: 01 Single Stack [Compatibility Mode]

Sudah ada sebuah stack yang dibuat dengan2int S[n], dengan variabel Top bertipe intsebagai penunjuk posisi isi stack yang ‘palingatas’. Tidak diketahui apakah stack tersebutatas . Tidak diketahui apakah stack tersebutdalam keadaan kosong, penuh, bisa diisi, atauada isinya.Tulis program (penggalan program) untukTulis program (penggalan program) untukmengeluarkan isi stack tersebut (bila adaisinya), dan mencetaknya ke layar monitor, satupersatu sampai stack tersebut kosong.

102

Page 103: 01 Single Stack [Compatibility Mode]

3 Sudah ada dua buahstack S1 dan S2 yang 7 7stack S1, dan S2, yangdibuat dengan int S1[n]dan S2[n]. Stack S1 sudahada isinya, dan stack S2,

175

33253

4567

Top1

3

4567

ada isinya, dan stack S2,belum ada isinya, yangdiilustrasikan dengangambar disebelah kanan

1215270

123

-1 S10123

-1 S2Top2

ini.

Susun program (penggalan) t kprogram) untuk

mengeluarkan isi stackS1, dan memindahkanisinya ke stack S2 4

567

2715124

567

Top2

isinya ke stack S2,sehingga stack S1menjadi kosong, denganilustrasi seperti gambar 0

123 25

335

170123

103

ilustrasi seperti gambardisebelah kanan ini.

-1 S1Top1 -1 S2

Page 104: 01 Single Stack [Compatibility Mode]

4Sudah ada tiga buah stack S1 S2 7 7 7Sudah ada tiga buah stack S1,S2dan S3, yang dibuat dengan intS1[n], S2[n] dan S3[n]. Stack S1sudah ada isinya, dan stack S2

175

33253

4567

Top1

3

4567

3

4567

sudah ada isinya, dan stack S2dan S3, belum ada isinya, yangdiilustrasikan dengan gambardisebelah kanan ini.

1215270

123

-1 S10123

-1 S2Top20123

-1 S3Top3

Susun program (penggalan) t k l k i iprogram) untuk mengeluarkan isi

stack S1, dan memindahkanisinya ke stack S2, sehinggastack S1 menjadi kosong 4

567

175

334567

Top2

4567

stack S1 menjadi kosong,dengan ilustrasi seperti gambardisebelah kanan ini. Stack S3dapat digunakan bilamana 0

123

33251215270

123

0123

1 S3

104

dapat digunakan bilamanadiperlukan

-1 S1Top1 -1 S2-1 S3Top3

Page 105: 01 Single Stack [Compatibility Mode]

5 Sudah ada tiga buah stackS1,S2 dan S3, yang dibuat 7 7 7, , y gdengan int S1[n], S2[n] danS3[n]. Stack S1 sudah adaisinya, dan stack S2 dan S3,

175

33253

4567

Top1

3

4567

3

4567

belum ada isinya, yangdiilustrasikan dengan gambardisebelah kanan ini.

1215270

123

-1 S10123

-1 S2Top20123

-1 S3Top3

Susun program (penggalanprogram) untuk mengeluarkan isi

k S1 d i d hkstack S1, dan memindahkanisinya ke stack S2, sehinggastack S1 menjadi kosong, danisi stack S2 urut menaik dengan 4

567

3327254

567

Top2

4567

isi stack S2 urut menaik denganilustrasi seperti gambardisebelah kanan ini. Stack S3dapat digunakan bilamana 0

123

2517151250

123

0123

1 S3

105

dapat digunakan bilamanadiperlukan

-1 S1Top1 -1 S2-1 S3Top3


Recommended