Posted by : Just Nanda... Friday, December 13, 2013

"Pop" bukan "Ayam Pop" (-__-")

Yah, kali ini saya mau membahas cara pop pada algoritma antrian dan tumpukan sebelumnya. Pop itu berguna untuk menghapus nilai yang ada pada array. Pada dasarnya, pop pada antrian dan pop pada tumpukan itu sama karena sama-sama menghapus nilai pada indeks pertama. 

Pada antrian aturannya adalah "First In First Out" yang berarti nilai yang masuk duluan ke antrian seharusnya yang duluan keluar dari antrian. (Walau terkadang di Indonesia jarang yang ngerti budaya antri #Kecewa). Pada tumpukan aturannya adalah "First In Last Out" yang berarti nilai yang masuk duluan akan terakhir keluar. Contohnya saja pada tumpukan piring, kita akan mengambil piring paling atas jika diasumsikan piringnya berjenis sama, dan sama-sama bersih. 

Pada kedua kasus tersebut, bagian pop memiliki peran yang sama yaitu sama-sama menghapus indeks pertama. Jika belum mengerti mengenai antrian dan tumpukan, silahkan baca postingan ini dan ini. Pada konsep pop ini, saya menggunakan metode perulangan dengan menggeser indeks agar menimpa indek sebelumnya. Dapat dituliskan seperti berikut.
Asumsi:
na=jumlah data dalam array;
i=0;
//pop
while (i < na)
{
   a[i] = a[i+1];
   i++;
na = na -1
Pada perulangan "while (i < na)" saya melakukan statement "a[i] = a[i+1];" sehingga indeks saat ini akan ditimpa oleh nilai indeks berikutnya. Statement setelah perulangan berakhir menunjukkan bahwa indeks telah bergeser hingga indeks terakhir dan itu juga berarti bahwa nilai awal telah hilang karena ditimpa sehingga seharusnya jumlah nilai dalam array harus dikurangi satu. Untuk mendefinisikan bahwa nilai "na" telah berkurang satu, maka dibuatkan statement "na = na -1;"

Saya rasa cukup sekian penjelasan mengenai algoritma Pop. Kalau ada salah kata saya mohon maaf. :D

Ingat, ini bukan postingan tentang Ayam POP 

Leave a Reply

Subscribe to Posts | Subscribe to Comments

- Copyright © 2013 Laboratorium Pemrograman dan Basis Data -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -