0% menganggap dokumen ini bermanfaat (0 suara)
2 tayangan9 halaman

Operasi Dasar dan Pemanfaatan Stack

Stack adalah struktur data linear yang memungkinkan penyisipan dan penghapusan elemen hanya pada satu sisi, disebut TOP. Terdapat empat operasi dasar pada stack: CREATE, ISEMPTY, PUSH, dan POP, yang digunakan dalam berbagai aplikasi, termasuk mengubah ekspresi aritmatik dari notasi infix ke postfix. Proses transformasi melibatkan scanning simbol dari kiri ke kanan dan menggunakan aturan tertentu untuk mengelola elemen dalam stack.

Diunggah oleh

mrevaldoandika2
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
2 tayangan9 halaman

Operasi Dasar dan Pemanfaatan Stack

Stack adalah struktur data linear yang memungkinkan penyisipan dan penghapusan elemen hanya pada satu sisi, disebut TOP. Terdapat empat operasi dasar pada stack: CREATE, ISEMPTY, PUSH, dan POP, yang digunakan dalam berbagai aplikasi, termasuk mengubah ekspresi aritmatik dari notasi infix ke postfix. Proses transformasi melibatkan scanning simbol dari kiri ke kanan dan menggunakan aturan tertentu untuk mengelola elemen dalam stack.

Diunggah oleh

mrevaldoandika2
Hak Cipta
© All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd

STRUKTUR DATA

INFORMATIKA

ITN MALANG

STACK (Tumpukan)
Pertemuan 6
STACK
DEFINISI STACK

Stack (tumpukan) adalah suatu bentuk khusus dari linear list


(himpunan terurut), dimana operasi penyisipan dan
penghapusan atas elemen-elemennya hanya dapat dilakukan
pada satu sisi saja yang disebut sebagai “TOP”.

Misal diberikan Stack S sebagai berikut :

S = [ S1, S2, .........., ST ] maka TOP(S) = ST.


Contoh :

sebuah stack S = [A,B,C,D], maka stack S ini dapat digambarkan


sebagai berikut :
OPERASI DASAR PADA STACK
Ada empat operasi dasar yang didefinisikan pada stack, yaitu :

1. CREATE(stack) berfungsi untuk membuat stack kosong


2. ISEMPTY(stack) berfungsi berfungsi untuk menentukan apakah
suatu stack adalah stack kosong. Operasinya akan bernilai
boolean
3. PUSH(elemen,stack) Operator ini berfungsi untuk
menambahkan satu elemen ke dalam stack
4. POP(stack) Operator ini berfungsi untuk mengeluarkan satu
elemen dari dalam stack
PEMANFAATAN STACK

Salah satu bentuk aplikasi stack adalah mengubah suatu ekspresi


aritmatik (infix) ke dalam notasi postfix. Notasi postfix ini
digunakan oleh compiler untuk menyatakan suatu ekspresi
aritmatik dalam bahasa tingkat tinggi (high level language).
Stack digunakan oleh compiler untuk mentransformasikan
ekspresi aritmatik menjadi suatu ekspresi dalam bentuk/notasi
postfix.
Perhatikan contoh dari notasi infix dan postfix berikut ini :

Infix Postfix

16 / 2 16 2 /

(2+14)*5 2 14 + 5 *

2+14*5 2 14 5 * +

(6-2)*(5+4) 6 2 – 5 4 +*

Urutan (prioritas) dari operator adalah :


[Link] (^)
[Link] (*) atau Pembagian (/)
[Link] (+) atau Pengurangan (-)
Aturan yang digunakan dalam proses transformasi tersebut
adalah :
[Link] aritmatik yang diberikan di- "Scan" dari kiri ke kanan.
[Link] simbol yang di-scan adalah "(", maka simbol tersebut di push
ke dalam stack.
[Link] simbol yang di-scan adalah ")", maka seluruh isi stack di pop
keluar mulai dari simbol "(" yang pertama ditemukan dalam stack.
[Link] simbol adalah operator, maka dilakukan perbandingan dulu
dengan simbol (operator) yang berada pada posisi top dalam
stack.
[Link] derajatnya setara atau lebih rendah dari simbol yang berada
pada posisi top, maka top stack di-pop keluar sebagai output dan
simbol yang baru di-push ke dalam stack.
[Link] derajatnya lebih tinggi dari simbol yang berada pada posisi
top, maka simbol (operator) yang di-scan tersebut di-push ke
dalam stack.
[Link] simbol yang di-scan adalah operand, maka simbol tersebut
langsung sebagai output.
[Link] simbol adalah ";" maka seluruh isi stack di-pop sebagai
output.

Anda mungkin juga menyukai