stack dan queue - tutorialpemrograman.files.wordpress.com · stack dan queue...

5
Stack dan Queue tutorialpemrograman.wordpress.com - 2009 1 Stack dan Queue Jeffrey Hermanto Halimsetiawan [email protected] tutorialpemrograman.wordpress.com | www.7eff.co.cc 15 Februari 2009

Upload: ngotuyen

Post on 11-Apr-2019

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Stack dan Queue - tutorialpemrograman.files.wordpress.com · Stack dan Queue tutorialpemrograman.wordpress.com - 2009 2 Stack adalah salah satu struktur data yang memiliki sistem

Stack dan Queue

tutorialpemrograman.wordpress.com - 2009 1

Stack dan Queue

Jeffrey Hermanto Halimsetiawan

[email protected]

tutorialpemrograman.wordpress.com | www.7eff.co.cc

15 Februari 2009

Page 2: Stack dan Queue - tutorialpemrograman.files.wordpress.com · Stack dan Queue tutorialpemrograman.wordpress.com - 2009 2 Stack adalah salah satu struktur data yang memiliki sistem

Stack dan Queue

tutorialpemrograman.wordpress.com - 2009 2

Stack

adalah salah satu struktur data yang memiliki sistem kerja Last In First Out (LIFO), yang terakhir

masuk pertama keluar. Dapat di ilustrasikan seperti sebuah tumpukan buku, ketika mengambil

sebuah buku di dalam tumpukan itu maka harus diambil satu persatu dari buku yang paling atas

dari tumpukan buku tersebut. Sebuah stack hanya dapat ditambahkan dan dikurangi elemennya

hanya dari satu sisi yakni elemen atasnya atau biasa disebut Top Of Stack.

Fungsi dalam Stack:

Fungsi init: fungsi yang digunakan untuk inisialisasi atau membuat stack baru yang masih

kosong.

Fungsi full: digunakan untuk mengetahui stack penuh atau tidak.

Fungsi empty: digunakan untuk mengetahui stack kosong atau tidak.

Page 3: Stack dan Queue - tutorialpemrograman.files.wordpress.com · Stack dan Queue tutorialpemrograman.wordpress.com - 2009 2 Stack adalah salah satu struktur data yang memiliki sistem

Stack dan Queue

tutorialpemrograman.wordpress.com - 2009 3

Fungsi clear: digunakan untuk mengosongkan stack. Stack dianggap kosong apabila

puncak stack berada pada posisi -1.

Fungsi push: digunakan untuk menambahkan data ke dalam stack. Penambahan data tidak

bisa dilakukan apabila stack sudah penuh. Urutan perintahnya adalah: menambahkan nilai

top dan menambahkan data pada posisi nilai top. Jika dalam Linked List menggunakan

method addLast

Fungsi pop: digunakan untuk mengeluarkan data teratas stack dengan syarat bahwa stack

tidak kosong. Urutan perintahnya adalah : menghapus data pada posisi nilai top dan

menurunkan nilai top. Jika dalam Linked List menggunakan method removeLast

Page 4: Stack dan Queue - tutorialpemrograman.files.wordpress.com · Stack dan Queue tutorialpemrograman.wordpress.com - 2009 2 Stack adalah salah satu struktur data yang memiliki sistem

Stack dan Queue

tutorialpemrograman.wordpress.com - 2009 4

Queue

adalah kumpulan data dengan penambahan data hanya melalui satu sisi, yaitu belakang (tail) dan

penghapusan data hanya melalui sisi depan (head). Berbeda dengan stack yang bersifat LIFO

maka queue bersifat FIFO(First In First Out), yaitu data yang pertama masuk akan keluar terlebih

dahulu dan data yang terakhir masuk akan keluar terakhir.

Fungsi dalam Queue:

Fungsi init : digunakan untuk membuat queue baru atau kosong, yaitu dengan memberi

nilai awal (head) dan nilai akhir (tail) dengan -1.

Fungsi full: digunakan untuk mengetahui apakah queue sudah penuh atau belum.

Dilakukan dengan memeriksa nilai akhir (tail) apakah sudah sama dengan maksimal

queue.

Page 5: Stack dan Queue - tutorialpemrograman.files.wordpress.com · Stack dan Queue tutorialpemrograman.wordpress.com - 2009 2 Stack adalah salah satu struktur data yang memiliki sistem

Stack dan Queue

tutorialpemrograman.wordpress.com - 2009 5

Fungsi empty: digunakan untuk mengetahui apakah queue masih kosong atau tidak.

Dilakukan dengan memeriksa nilai akhir (tail) bernilai -1 atau tidak.

Fungsi enqueue : digunakan untuk menambahkan elemen ke dalam queue.

Fungsi dequeue : digunakan untuk mengambil elemen dari queue, dengan cara

memindahkan semua elemen satu langkah ke posisi depannya sehingga elemen yang

paling depan tertimpa.

Fungsi clear : digunakan untuk menghapus semua elemen dalam queue. Ada dua cara

yang bisa digunakan, yaitu menuliskan fungsi seperti inisialisasi atau memanggil fungsi

remove sampai queue kosong.