Algoritma Stack - Sandya Yuda Pratama

Download Report

Transcript Algoritma Stack - Sandya Yuda Pratama

IMPLEMENTASI STACK
NAMA KELOMPOK :
DAVID A.R
KORAWATI
SANDYA Y.P
Free Powerpoint Templates
S1 PTI OFFF E 11
Page 1
PENGERTIAN STACK
Secara bahasa, Stack berarti tumpukan. Jika dikaitkan dengan struktur data,
Stack berarti sekumpulan data yang organisasi atau strukturnya bersifat
tumpukan atau menyerupai tumpukan.
dalam pengembangannya, stack dapat dikelompokkan menjadi dua
bagian. Dua bagian tersebut yaitu Single Stack dan Double Stack.
•
•
Single Stack : Single Stack atau Stack Tunggal adalah stack yang hanya
terdiri dari satu koleksi. Bila stack ini direpresentasikan dengan array, maka
pengisian dan penghapusan harus dilakukan bertahap dari indeks TOPnya.
Double Stack : Double Stack atau Stack Ganda adalah stack yang hanya
terdiri dari dua single stack. Bila stack ini direpresentasikan dengan array,
maka pengisian dan penghapusan harus melalui salah satu arah.
Free Powerpoint Templates
Page 2
contoh penerapan stack dalam kehidupan
sehari-hari,s tack adalah suatu tumpukan dari benda.
Konsep utamanya adalah LIFO (Last In First Out),
benda yang terakhir masuk dalam stack akan menjadi
benda pertama yang dikeluarkan dari stack.
Prinsip stack ini bisa diterapkan dalam pemrograman.
Di C++, ada dua cara penerapan prinsip stack, yakni
dengan
array
dan
linked
list.
Free Powerpoint Templates
Page 3
Stack adalah salah satu struktur data yang memiliki sistem kerja Last In First Out
(LIFO), yang terakhir masuk pertama keluar.dapat di gambarkan seperti:
1. Misal Sate, si pembuat sate menusukan (memasukan) daging sate ke tusukan
satu per satu dari ujung tusukan (ujung yang runcing) menuju/mendekati batas
pangkal, jika telah dimasak, maka si pemakan sate akan mengeluarkan
(memakan) sate satu persatu dari ujung (yang akhir-akhir dimasukan si
pembuat, itulah yang awal-awal dimakan).
2. seorang anak yang sedang mencuci piring, piring yang di cuci pertama pasti
akan diletakan di bawah dan akan terus berlanjut sampai tumpukan piring yang
terahir di cuci. dan ketika semua piring sudah di cuci kemudian piring pasti akan
di taruh di rak piring. cara penaruhanya pun pasti yang paling terahir di ambil
lebih dahulu.dan piring yang pertama di cuci justru paling akhir yang di ambil.
3. tumpukan batu bata yang sedang turun dari mobil pasti yang diturunkan
pertama pasti akan di susun menjadi tembok paling akhir. dan masih banyak lagi
contoh dari steck yang bisa kita dapat dalam kehidupan sehari-hari. ini adalah
contoh kecil dari sekian banyak contoh penerapan steck yang kita lakukan.
mengapa demikian itu karena Stack memiliki sistem kerja Last In First Out (LIFO),
yang terakhir masuk pertama keluar
Free Powerpoint Templates
Page 4
Algoritma : #1 Menemukan nilai minimum dan maximum
dalam sebuah Array
//Membuat sebuah array dengan bilangan acak sebagai isinya
$stack = array(10,2,11,3,7,1,0);
//Menghitung Jumlah Array
$countStack = count($stack);
//Jadikan array indeks pertama sebagai kunci pembanding
$key = $stack[0];
for ($g=0; $g<$countStack; $g++) {
//Bila nilai Indeks Array yang sedang diloop lebih kecil dari nilai
kunci pembanding Maka ganti kunci pembanding
dengan array yg sedang diloop
if ($key > $stack[$g]){
$key = $stack[$g];
}
}
print "Minimum Number in : ";
print_r($stack);
print "Is $key";
?>
Free Powerpoint Templates
Page 5