Senin, 11 Februari 2013

[Struktur Data] Stack atau Tumpukan

STACK ( TUMPUKAN )

Stack ( Tumpukan ) dapat diartikan sbg :
Suatu kumpulan data yang seolah-olah ada data yg diletakkan diatas data yg lain, yg bisa menyisipkan ( menambah ) data serta mengambil ( menghapus data ).

Operasi yg dpt dilakukan dalam stack :
    1. Menyisipkan / menambahkan data pd ujung atas stack
       -> push
    2. Menghapus / mengeluarkan data dr ujung atas stack
       -> pop
Prinsip kerja stack adalah LIFO ( Last In First Out )

Penyajian awal Stack :
Dalam Pascal dikenal type data terstruktur yg disebut ARRAY (LARIK). Dapat digunakan u menyajikan sebuah tumpukan. Tapi penyajian dg mengg. ARRAY adalah kurang tepat karena banyaknya elemen dalam array adalah statis.
Sedangkan dalam tumpukan, banyaknya elemen dapat bervariasi ( dinamis ).
Meskipun demikian, ARRAY dapat digunakan u menyajikan sebuah tumpukan dg anggapan bahwa banyaknya elemen max dari tumpukan tsb tidak akan melebihi batas max banyaknya elemen dalam array.

Pada saat ukuran tumpukan = ukuran array, jika ditambahkan data baru akan menyebabkan “OVERFLOW”.
Dengan demikian perlu adanya data tambahan u mencatat posisi ujung atas tumpukan.

Dengan kebutuhan ini, penyajian tumpukan dapat dilakukan dengan menggunakan type data terstruktur yang lain yaitu RECORD ( Rekaman ) yg terdiri dari 2 field :
    - Field 1 -> Digunakan u menyimpan elemen tumpukan yg bertype array
    - Field 2 -> Digunakan u mencatat posisi atas ujung tumpukan.

    Deklarasi STACK secara umum :
    const MaxElemen =255;
    type Tumpukan = record
                Isi : array[1..MaxElemen] of string;
                atas : 0..MaxElemen
                end;
    var T : Tumpukan;


Untuk file lengkapnya download disini

Related Articel:

0 komentar:

Posting Komentar

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Affiliate Network Reviews