Pada pertemuan kelima kita diajarkan mengenai Stack and Implementation.
Pada pertemuan ke 5, topik pembicaraan nya memiliki sangkut paut dengan pertemuan ke empat.
Stack : Memiliki 2 konsep , LIFO (Last In First Out) dan FILO (First in Last Out). Sebagai Contoh, semisal ada tumpukan piring, kita pasti mengambil tumpukan piring teratas terlebih dahulu kecuali ada orang yang repot yang ingin mengambil piring dari tengah, Memang ada 2 kemungkinan. Tetapi kalau kita ambil contoh tabung yang hanya memiliki 1 tempat keluar seperti misalkan tabung bola tenis (kalau beli di supermarket beli bola tenis yang 1 tabung memiliki isi 3) hanya bisa dikeluarkan dari one side saja. Itulah konsep dari stacking.
Dalam stacking ada yang dimaksud dengan Top. Yang digunakan untuk mengidentifikasikan parameter yang ada di atas. Contoh yang sering digunakan adalah Tower Of Hanoi, dimana untuk menyelesaikan masalah tower of hanoi, yang di keluarkan dari tiang masing masing adalah balok yang ada di paling atas.
Dalam Stack ada 3 macam operasi: push (untuk menambahkan item ke dalam Top of the stack), pop (untuk menghapus item yang ada di Top). dan Top itu sendiri (untuk menunjuk item mana yang ada dipuncak / diatas).
Queue : Memiliki konsep FIFO (First In First Out) dan LILO (Last in Last Out). Dimana benda yang masuk pertama kali pasti akan keluar terlebih dahulu. Contohnya bila kita sedang mengantri di kasir, orang yang pertama kali mengantri pasti akan keluar terlebih dahulu, First come first serve then out!
Istilah - istilah dalam Queue:
- Front : Tempat dimana data pertama akan diletakkan.
- Rear : Tempat untuk menentukan berapa banyak jumlah data yang dimasukkan.
- Kita juga mengenal instilah Dequeue dan Enqueue.
- Dequeue : Melepaskan front, atau mendelete data atau biasa juga disebut pop.
- Enqueue : Memasukkan data baru.
Lalu kita juga diperkenalkan dengan DFS (Depth First Search) dan BFS.
DFS (Depth First Search)
DFS adalah sebuah algoritma untuk mentranvers dan mencari data dalam tree dan graph. DFS biasanya digabungkan dengan cara rekursif.
Algorithma:
Prepare
an empty stack
Push
source/root into stack
Mark
source/root
While
stack is not empty
Pop an item from stack into P
For each node X adjacent with P
If X is not marked
Mark X
Push X into stack
Nama : Dickson S.
NIM : 1701291283
www.binus.ac.id || www.skyconnectiva.com