Rabu, 02 Maret 2011

STACK (STRUKTUR DATA)

Dalam ilmu komputer, stack atau tumpukan merupakan sebuah koleksi objek yang menggunakan prinsip LIFO (Last In First Out), yaitu data yang terakhr kali dimasukkan akan pertama kali keluar dari stack tersebut. Stack dapat diimplementasikan sebagai representasi berkait atau kontigu (dengan tabel fix).
Stack/Tumpukan adalah bentuk khusus dari list linear. Pada stack, penghapusan serta pemasukan elemennya hanya dapat dilakukan pada satu posisi, yakni posisi akhir dari list. Posisi ini disebut puncak atau Top dari stack. Elemen stack S pada posisi ini dinyatakan dengan TOP(S).
       Jelasnya, bila stack S = [A, B, C, D, E], maka TOP(S) adalah E. banyaknya elemen pada stack S pada suatu saat tertentu biasa kita sebut sebagai NOEL(S). Jadi untuk stack diatas NOEL(S) = 5.
       Seperti halnya link list, pada stack juga terdapat operasi penghapusan dan pemasukkan elemen list. Operator penghapusan pada stack kita kenal dengan nama POP, sedangkan operator pemasukkan elemen disebut PUSH. Berikut ini merupakan ilustrasi dari penggunaan operator-operator diatas yang dimulai dari sebuah stack S kosong,
S = [ ].
 
Ciri Stack :
  • Elemen TOP (puncak) diketahui
  • penisipan dan penghapusan elemen selalu dilakukan di TOP
  • LIFO
Pemanfaatan Stack :
  • Perhitungan ekspresi aritmatika (posfix)
  • algoritma backtraking (runut balik)
  • algoritma rekursif
Operasi Stack yang biasanya :
  1. Push (input E : typeelmt, input/output data : stack): menambahkan sebuah elemen ke stack
  2. Pop (input/output data : stack, output E : typeelmt ) : menghapus sebuah elemen stack
  3. IsEmpty ()
  4. IsFull ()
  5. dan beberapas selektor yang lain

1 komentar:

  1. Terimakasih sharingnya..sangat bermanfaat membantu belajar pemrograman..
    Kunjungi kami

    BalasHapus