stack

Post on 21-Jan-2017

71 Views

Category:

Presentations & Public Speaking

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

STACK (TUMPUKAN)

DEFINISI STACK(TUMPUKAN)Stack (tumpukan) adalah sebagai tumpukan

daribenda, sekumpulan data yang seolah-olah di letakkan di atas data yang lain, koleksi dari objek-objek homongen, atau suatu elemen yang urutan elemenya dapat diambil dan ditambah hanya pada posisi akhir (top) saja.

ILUSTRASI Terdapat dua buah kotak yang ditumpuk, kotak yang ditumpuk, kotak yang satu akan ditumpuk di atas kotak yang lainnya. Jika kemudian stack 2 kotak tadi, di tambah kotak ketiga, keempat, kelima, dan seterusnya, maka akan di peroleh sebuah stack kotak yang terdiri dari N kotak stack bersifat LIFO (Last In First Out) artinya benda yang terakhir masuk ke dalam stack akan menjadi pertama keluar dari stack.

KELEBIHAN DAN KEKURANGAN STACKKELEBIHAN

penambahan dan penghapusan data dapat dilakukan dengan cepat, yaitu O (1), selama memori masih tersedia , penambahan data bisa terusdilakukan. Dengan demikian tidak ada kekawatiran terjadinya stack overflow.

KEKURANGANsetiap sel tidak hanya menyimpann value saja, melainkan juga pointer ke sel berikutnya. Yang menyebabkan implementasi stack memakai linked list akan memerlukan memori banyak, dan hanya di akses linked list hanya bisa di aksesdengan cara sekuensial, sehingga lambat O(n).

OPERASI PADA STACK 1. Operasi Push (Menyisipkan Data)

Memasukkan data ke dalam stack2. Operasi Pop (menghapus data)

Menghapus elemen yang terletak pada posisi paling atas dari sebuah stack.

Deklarasi Contoh://DeklarasiMAX_STACK

#defineMAX_STACK10 //Deklarasi STACKDengan struck dan arrayData

typedef struckSTACK{Int top;Char data [10][10];};//Deklarasi/buatVariabel dari struck

STACK tumpuk;

PROGRAM LISTING

Sambungan listing

PROGRAM OUTPUT

top related