CONTOH FLOWCHART UNTUK STRUKTUR DATA STACK

 Apa itu Stack ?

Dalam sebuah algoritma, pastinya kita mengenal struktur konsep Stack. Nah yang jadi pertanyaan, apa sih Stack itu? Nyangkut gitu maksudnya..? Bukan nyangkut, tapi lebih ke mengartikan sebuah Tumpukan.. Jadi dalam Struktur Data, Stack diartikan sebagai sebuah kumpulan data yang seolah-olah diletakkan diatas data yang lainnya. Maka Stack adalah suatu urutan elemen yang elemennya dapat diambil dan ditambah hanya pada posisi paling akhir/paling baru dibuat saja.

Jadi Konsep Stack ini menggunakan Metode LIFO (Last In First Out). Jika bingung LIFO itu apa. Contohnya dalam kehidupan kita itu ibarat kita menumpuk sebuah Koin atau Piring, yang dimana koin atau piring yang kita simpan pertama akan menjadi yang paling bawah, dan yang terakhir disimpan pada tumpukan koin/piring ini akan menjadi bagian yang paling atas. Dan kita pun pastinya akan mengambil tentu dari bagian yang paling atas dulu kan? Nah begitulah Metode LIFO. 

Contoh Tumpukan Koin dan Kotak

Ohiya,, dalam Operasi Stack kita akan mengenal fungsi/proses-proses seperti : 

  1. Awal (Inisialisasi)
  2. PUSH (Insert, Masuk, Simpan, Buat)
  3. POP (Delete, Keluar, Hapus, Ambil)

Nahh dari ilustrasi diatas, kita bisa implementasikan Stack ini pada sebuah Flowchart(Diagram Alur) seperti contoh dibawah ini : 


1. Fungsi Push pada Stack

Pada Flowchart yang pertama ini ada flowchart Fungsi Push. Yang dimana ini adalah Flowchart penggambaran jika kita menambah data pertama pada Stack.

Mula-mula adalah Start, simbol yang wajib dibuat pada pembuatan sebuah Flowchart pertama kali. Lalu untuk simbol segi enam ini disebut sebagai Preparation, yang dimana fungsinya adalah penyediaan atau penyimpanan awal suatu nilai, itulah kenapa ada tulisan variabel = .. karna itu untuk memberitahukan bahwa akan menempatkan variabel Nilai, Top, dan Max.

Lalu ada simbol Input, sebagai awal masukan inputan data angka, dan seterusnya ada decision, yang memberikan pemilihan apakah nilai sudah ditambah/belum. Jika memilih N (No) maka data tersebut akan menjalankan operasi menambah 1 yang kemudian menyelesaikan Proses. Dan jika memilih Y (Yes) maka data tersebut akan memberitahu output berupa "Data Stack Sudah Penuh". Lalu END sebagai simbol selesainya proses flowchart ini.


2. Fungsi Pop pada Stack

Lalu yang kedua ada POP, ini adalah sebuah proses untuk mengurangi data Stack, atau menghapus data Stack ini.

Permulaan seperti biasa, dimulai dari Start dan Preparation, lalu langsung ke Decision, apakah si Nilai sudah diatas dan tidak melebihi MAX. Jika Y (Yes), maka data Stack di paling atas akan terhapus. Dan jika N (No), maka proses tidak akan menghapus data, melainkan seperti mengecek di data Stack apakah data Stack mencapai top yang sesuai dengan batas range dari Max ini. Lalu END sebagai akhir dari proses ini flowchart POP ini.


3. Fungsi Display/Tampil pada Stack


Untuk proses flowchart ini biarpun hanya menampilkan data Stack yang dibuat, namun ada proses yang cukup panjang, seperti yang bisa dilihat diatas terdapat 2 Decision,

Yang dimana Decision pertama itu adalah pengecekan apakah Stack sudah dibuat atau belum, jika N(No) maka valid bahwa Data Stack belum dibuat karna pada Decision pertama ada pemilihan apakah Nilai(Variabel) sudah lebih besar dari top atau belum. Dan jika Y (Yes) maka akan menampilkan Stack yang sudah dibuat.

Lalu pada Decision kedua adalah pengulangan apakah data Stack yang ditampilkan sudah sesuai dengan Max stack nya. Bingung maksudnya gimana? Contohnya begini, Katakanlah ada data Stack "Tumpukan Buku Mapel", dan Max atau Maximal range dari Stack ini adalah 5, yang harusnya menampilkan data : 

- "Buku Bhs Indo",
- "Buku MTK",
- "Buku IPA",
- "Buku IPS", dan
- "Buku Bhs Inggris". 

Jika data stack ini hanya baru menampilkan 3 data saja, maka pemilihan akan ke Y (Yes) karena ya range nya 5 gituu, Nah begitu sudah sesuai range yang dimana contoh ini adalah 5, maka akan langsung ke N (no) yang dimana langsung menyelesaikan proses flowchart dari proses Display ini.


Kesimpulan

Kesimpulannya, Stack merupakan sebuah konsep pada struktur algoritma yang dimana nantinya akan berguna atau dipakai di pemrograman, entah itu bahasa C atau PHP yang dimana fungsinya adalah menumpuk data data yang dibuat sehingga dapat ditampilkan 1 per 1 secara rapih dari yang terbaru ke yang terawal dibuat atau disebut dengan Metode LIFO (Last In First Out). Dan Stack ini akan berguna dan berkesinambungan jika kita menggunakan Konsep yang satu lagi, yaitu Queue.

Sumber : 



Komentar

Postingan populer dari blog ini

Tutorial Pemrograman Materi Algoritma

Currikulum Vitae