Stack.

Slides:



Advertisements
Presentasi serupa
Introduction to Algorithm evaluation Soal Matrikulasi Buka Buku
Advertisements

Bab 2 Struktur Dasar.
STRUKTUR DATA Struktur Data - Gerlan A. Manu, ST.,MKom 1.
STRUKTUR DATA array stack dan queue
STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak.
Pertemuan 5 STACK atau TUMPUKAN IMAM SIBRO MALISI NIM :
STRUKTUR DATA PERTEMUAN 5
LOGIKA DAN ALGORITMA - PERTEMUAN 8 - REKURSI.
PENCARIAN (SEARCHING)
Rahmady Liyantanto liyantanto.wordpress.com S1 Teknik Informatika Universitas Trunojoyo Struktur Data.
Bab 2 PERINTAH-PERINTAH DASAR (BAG. 1) Program Pendidikan Sarjana Ekstensi DTE FTUI Slide ©2008.
LARIK (ARRAY).
STACK (TUMPUKAN).
Struktur Organisasi Data 2
Stack (Tumpukan) Sumber Kepustakaan : putuputraastawa.files.wordpress.com/.../pert_5_sta...
Algoritma dan Struktur Data
STACK.
STACK.
Pointer dalam Stack.
Struktur Data Stack.
Stack (Tumpukan).
STACK.
Chapter 12 Antrian (Queue) Program Studi Ekstensi DTE FTUI Slides©2007.
Bab 2 – b PERINTAH 2 B Percabangan. PERCABANGAN Tidak setiap baris program akan dikerjakan Hanya yang memenuhi syarat (kondisi) Syarat terdiri dari operand-operand,
Pengenalan PHP Operator Aritmatika:
Linear Data Structures (Stack)
STRUKTUR DATA (4) array stack dan queue
Apakah Stack itu ?. Apakah Stack itu ? Pengertian STACK Secara sederhana diartikan dengan : sebagai tumpukan dari benda sekumpulan data yang seolah-olah.
BAB 3 STACK (TUMPUKAN).
STACK.
Stack Pertemuan 11.
Stack.
NAMA : siti hajar NIM : UNIT : b NO.hp : 0852 –
Chapter 7 Linked List December 2015.
Chapt 04 : Stack Oleh : Yuli Praptomo PHS, S.Kom
Notasi Algoritma & Tipe Data
Stack.
STACK ( TUMPUKAN ) Fajrizal.
Sapta Candra Miarsa,S.T.,M.T.
STRUKTUR DATA IMPLEMENTASI STACK.
STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak.
Tumpukan dalam struktur data
Stack Stack atau tumpukan adalah suatu stuktur data yang penting dalam pemrograman Bersifat LIFO (Last In First Out) Benda yang terakhir masuk ke dalam.
STACK (Tumpukan) Tumpukan Koin Tumpukan Kotak.
Chapter 9 Linked List (Senarai Bertaut)
Antrian (Queue).
STRUKTUR DATA : STACK Sri marini.st.
STRUKTUR DATA IMPLEMENTASI STACK.
Stack (Tumpukan) Sumber Kepustakaan : putuputraastawa.files.wordpress.com/.../pert_5_sta...
TEAM 1 Cut Hayatul Wardani ( ) Saputri Phonna ( ) Azhary (140502)
SEMANTIKS Pertemuan Ke-3.
Pengenalan PHP Operator Aritmatika:
Pseudocode – Tipe Data, Variabel, dan Operator
Tumpukan Dengan Array Ika Menarianti.
STACK / TUMPUKAN Struktur Data.
Struktur Dasar Algoritma dan Runtunan
STACK Yohana Nugraheni.
STRUKTUR DATA IMPLEMENTASI STACK.
STRUKTUR DATA TUMPukAN (STACK).
STRUKTUR DATA IMPLEMENTASI STACK.
STACK HARJANTO SUTEDJO.
STACK Kuliah Struktur Data Pascal
Bab 2 Struktur Dasar.
STRUKTUR DATA IMPLEMENTASI STACK.
STRUKTUR DATA PERTEMUAN 4
STRUKTUR DATA Stack atau Tumpukan.
STACK.
Contoh Implementasi Stack 1
BAB 3 STACK (TUMPUKAN).
STACK (Tumpukan) Tumpukan Koin.
Transcript presentasi:

Stack

Pendahuluan Stack Tumpukan piring, tumpukan kertas, tumpukan batu, dlsb Dalam kehidupan sehari-hari sering kita menjumpai tumpukan Sifat tumpukan : satu elemen tumpukan dapat diambil bila tumpukan di atasnya dapat diambil

Pendahuluan Stack Elemen terakhir yang ditumpuk, yang akan diambil untuk yang pertama. Sifat ini disebut : LIFO  Last In First Out Untuk tumpukan tertentu ada yang khusus  elemen tumpukan hanya boleh diambil satu persatu

Pendahuluan Stack Pada dunia komputer, konsep tumpukan sering digunakan Sifat tumpukannya hanya boleh diambil satu per satu Contoh : Penanganan pemanggilan sub program saat pelaksanaan suatu program Evaluasi pernyataan aritmatika

Pendahuluan Stack Ada dua operasi dasar pada tumpukan : Tumpuk Ambil

Implementasi dengan larik Max. tumpukan atas tumpukan

Implementasi dengan larik def maksTumpukan : 20 Tumpukan : array[1 .. maksTumpukan] of string atas : integer edef

Operasi tumpuk data Operasi pertama : tumpuk data proc tumpuk {tumpuk data x pada tumpukan dan laporkan apakah penuh atau tidak} if atas == maksTumpukan then penuh = true else atas = atas + 1 tumpukan[atas] = x penuh = false eif eproc

Operasi ambil data Operasi ambil data proc Jumput(x, kosong) {ambil elemen teratas tumpukan lalu simpan pada x dan laporkan apakah kosong atau tidak} if atas == 0 then kosong = true else x = tumpukan[atas] atas = atas - 1 kosong = false eif eproc

Evaluasi Bentuk Postfix Suatu pernyataan aritmatika terdiri dari sejumlah operator dan operand Operator dapat terdiri dari : +, -, *, / dll Operand : bilangan atau variabel

Evaluasi Bentuk Postfix Setiap pernyataan aritmatika dapat dinyatakan dalam bentuk : Infix : 2 + 3 Prefix : 2 3 + Postfix : + 2 3

Evaluasi Bentuk Postfix 2 4 6 * + : akan menghasilkan nilai = 26 Algoritmanya : Ambil satu operator while ada operator do Operasikan terhadap dua operand disebelah kirinya, dan hasilnya membentuk operand baru Ambil operator berikutnya ewhile

Evaluasi Bentuk Postfix Kelompok aksara yang dianggap satu kesatuan disebut token Token : Operator Operand Tanda sama dengan merupakan akhir dari pernyataan

Evaluasi Bentuk Postfix Modul : Operasikan terhadap dua operand disebelah kirinya, dan hasilnya membentuk operand baru merupakan operasi pada tumpukan Setiap kali menemukan operand, ditumpuk pada tumpukan

Evaluasi Bentuk Postfix Modul : Pengoperasian dua operand disebelah kiri operator sama dengan pengoperasian dua operand teratas pada tumpukan. Hasilnya ditaruh lagi pada tumpukan. Hasil akhir dari pengevaluasian adalah elemen teratas pada tumpukan.

Pernyataan yang akan dikerjakan Isi Tumpukan Isi Tumpukan OP 1 OP 2 2 3 + = 3 + = 2 + = 2 3 = 2 3 = 2 3 = 5

Pernyataan yang akan dikerjakan Isi Tumpukan Isi Tumpukan OP 1 OP 2 2 4 6 * + = 4 6 * + = 2 6 * + = 2 4 * + = 2 4 6 + = 2 4 6 + = 2 2 4 6 + = 2 24 = 2 24 = 2 24 = 26

Pernyataan yang akan dikerjakan Isi Tumpukan Isi Tumpukan OP 1 OP 2 2 4 + 6 * 15 3 -/= 4 + 6 * 15 3 -/= 2 + 6 * 15 3 -/= 2 4 4 6 * 15 3 -/= 2 4 6 * 15 3 -/= 2 6 * 15 3 -/= 6 * 15 3 -/= 6 6 15 3 -/= 6 6 15 3 -/= 6 6 15 3 -/= 36

Pernyataan yang akan dikerjakan Isi Tumpukan Isi Tumpukan OP 1 OP 2 3 -/= 36 15 -/= 36 15 3 3 /= 36 15 15 3 /= 36 /= 36 12 = 36 12 = 36 12 = 3

Algoritma Global AmbilToken (token, operand, operator) while token < > tandaSamaDengan do if token = simbolOperand then Tumpuk (operand, penuh) else (token adalah operator) Jumput (op1, kosong) Jumput (op2, kosong)

Algoritma Global Tumpuk (Evaluasi (op2, op1, operator), tumpukan) Eif AmbilToken(token, operand, operator) ewhile

Pengembangan Algoritma prog EvaluasiPostfix () read(pernyataan) AmbilToken (token, operand, operator) while token < > tandaSamaDengan do case token of

Pengembangan Algoritma simbolOperand: Tumpuk (operand, penuh) If penuh then Henti(‘Pernyataan terlalu panjang’)

Pengembangan Algoritma simbolOperator: Jumput(op1, kosong) if kosong then Henti (‘Kurang operand’) Jumput (op2, kosong) Tumpuk (Evaluasi (op2, op1, operator), penuh)

Pengembangan Algoritma SimbolAbsah: Henti (‘Aksara tidak dikenal) SimbolKosong: (‘Pernyataan tidak lengkap’) ecase AmbilToken (token, operand, operator) ewhile

Pengembangan Algoritma {Periksa keadaan akhir tumpukan dan tuliskan hasilnya} case atas of 0: write (‘Pernyataan kosong’) 1: write (tumpukan[atas]) else write (‘Kurang Operator’) ecase eprog

Deskripsi masing-masing modul AmbilToken (token, operand, operator): Mengambil satu token Token dapat berupa : Simbol operand Simbol operator Tanda sama dengan Aksara absah Simbol Kosong

Deskripsi masing-masing modul AmbilToken (token, operand, operator): Simbol operand variabel operand Simbol operator variabel operator

Deskripsi masing-masing modul Tumpuk (operand, penuh) Menaruh operand pada tumpukan Melaporkan tumpukan penuh/tidak Penuh variabel penuh benar Bila tidak variabel penuh salah

Deskripsi masing-masing modul Henti (pesan): Menghentikan program sambil memperagakan pesan

Deskripsi masing-masing modul Jumput (x, kosong) : Ambil operand dari tumpukan Simpan dalam variabel x Melaporkan apakah tumpukan kosong? Kosong variabel kosong benar Isi variabel kosong salah

Deskripsi masing-masing modul Evaluasi (op1, op2, operator) Mengembalikan hasil evaluasi operand op1 dengan operand op2 menggunakan operator

Algoritma Base-Conversion Mengkonversi nilai basis 10 ke basis 2

Algoritma Base-Conversion Stack of Remainders Computation Output 13 R 2 26 6 R 1 2 13 1

3 R 2 6 1 1 R 1 2 3 1 1

R 1 2 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1

1 1 1