materi : stack · definisi stack (tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam...

12
Matakuliah Matakuliah : Struktur Data Struktur Data Versi Versi : 1.0.0 1.0.0 Materi Materi : Stack Stack Penyaji Penyaji : Zulkarnaen NS Zulkarnaen NS 1

Upload: others

Post on 09-Sep-2019

24 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

MatakuliahMatakuliah :: Struktur DataStruktur DataVersiVersi :: 1.0.01.0.0

MateriMateri :: StackStackPenyajiPenyaji :: Zulkarnaen NSZulkarnaen NS

11

Page 2: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

DefinisiStack (Tumpukan) adalah kumpulan elemen-elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen-elemen data hanya boleh diakses pada satu lokasi saja yaitu posisi ATAS (TOP) tumpukan.

22

Stack merupakan suatu tumpukan dari benda. Konsep utamanya adalah LIFO (Last In First Out), benda yang terakhir masuk dalam stack akan menjadi benda pertama yang dikeluarkan dari stack.

Tumpukan disebut juga “Push Down Stack” yaitu penambahan elemen baru (PUSH) dan penghapusan elemen dari tumpukann(POP). Sistem pada pengaksesan pada tumpukan menggunakn system LIFO (Last In First Out), artinya elemen yang terakhir masuk itu yang akan pertama dikeluarkan dari tumpukan (stack).

Ilustrasi tumpukan (stack) dapat digambarkan seperti tumpukan CD atau tumpukan sate. Stack merupakan suatu susunan koleksi data dimana dapat ditambahkan dan dihapus selalu dilakukan pada bagian akhir data, yang disebut dengan Top Of Stack.

Page 3: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Operasi – operasi pada Stack (tumpukan)Operasi yang sering diterapkan pada struktur data Stack (tumpukan) adalah Push dan Pop. Operasi – operasi yang dapat diterapkan adalah sebagai berikut : 1. Push : digunakan untuk menembah item pada stack pada tumpukan

paling atas.2. Pop : digunakan untuk mengambil item pada stack pada tumpukan

paling atas.3. Clear : digunakan untuk mengosongkan stack.4. Create Stack : membuat tumpukan baru stack, dengan jumlah

elemen kosong.5. MakeNull : mengosongkan tumpukan stack, jika ada elemen maka

semua elemen dihapus.6. IsEmpty : fungsi yang digunakan untuk mengecek apakah stack

sudah kosong.7. Isfull : fungsi yang digunakan untuk mengecek apakah stack sudah

penuh.

33

Page 4: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Pada proses Push, tumpukan (Stack) harus diperiksa apakah jumlahelemen sudah mencapai masimum atau tidak. Jika sudah mencapaimaksimum maka OVERFLOW, artinya Tumpukan penuh tidak adaelemen yang dapat dimasukkan ke dalam Tumpukan. Sedangkan padaproses Pop, Tumpukan harus diperiksa apakah ada elemen yanghendak dikeluarkan atau tidak. Jika tidak ada maka UNDERFLOW,artinya tumpukan kosong tidak ada elemen yang dapat diambil.

44

Operasi – operasi pada Stack (tumpukan)…

Page 5: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Macam-macam Stack1. Stack dengan Array

Sesuai dengan sifat stack, pengambilan atau penghapusan elemendalam stack harus dimulai dari elemen teratas.

55

2. Double Stack dengan ArrayMetode ini adalah teknik khusus yang dikembangkan untukmenghemat pemakaian memori dalam pembuatan dua stackdengan array. Intinya adalah penggunaan hanya sebuah array untukmenampung dua stack.

Page 6: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Contoh

66

Page 7: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Contoh…

77

Page 8: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Contoh…

88

Page 9: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Contoh…

99

Page 10: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Contoh…

1010

Page 11: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

Contoh…

1111

Page 12: Materi : Stack · Definisi Stack (Tumpukan) adalah kumpulan elemen -elemen data yang disimpan dalam satu lajur linear. Kumpulan elemen -elemen data hanya boleh diakses pada …

SelesaiSelesai

1212