Session – 3
Implementasi Linked List
- Stack
Adalah tumpukan dari benda, sekumpulan data yang seolah-olah diletakkan di atas data yang lain.
Stack bersifat LIFO (Last In First Out) artinya benda yang terakhir masuk ke dalam stack akan menjadi yang pertama keluar dari stack
Operasi-operasi yang biasanya tredapat pada Stack yaitu:
- Push : berguna untuk menambah item pada stack pada tumpukan paling atas
- Pop : berguna untuk mengambil item pada stack pada tumpukan paling atas
- Clear : berguna untuk mengosongkan stack
- IsEmpty : berguna untuk mengecek apakah stack sudah kosong
- IsFull : berguna untuk mengecek apakah stack sudah penuh
- NOTASI INFIX, PREFIX, POSTFIX
- Infix : adalah notasi yang berbentuk operator atas operand, operator berada diantara operand
- Prefix : adalah notasi yang berbentuk operator atas operand, operator berada diatas operand
- Postfix : adalah notasi yang berbentuk operator atas operand, operator berada dibelakang operand
Contoh – contoh operasinya :
Infix : 4 + 6 * ( 5 – 2 ) / 3
Prefix : + 4 / 3 * 6 – 5 2
Postfix : 4 6 5 2 – * 3 / +
- QUEUE
Adalah antrian sekumpulan data penambahan dan penghapusan pada implementasi suatu array dan linked list Bersifat FIFO (First In First Out) dan memiliki karateristik :
- elemen antrian.
- front (elemen terdepan antrian).
- tail (elemen terakhir).
- jumlah elemen pada antrian.
- status antrian.
- DFS dan BFS
- DFS (depth first search)
adalah pencarian pada suatu node dalam setiap level dari paling kiri
Kelebihan DFS :
- Pemakaian memori yang sedikit
- Jika solusi yang dicari berada paling kiri dengan mudah ditemukan
Kelemahan DFS :
- Jika level dinaikkan tak terhingga, maka Solusi tidak complete
- Tidak optimal dalam mengatasi solusi yang sama dalam level yang berbeda
- BFS (Breadth First Search)
adalah pencarian secara melebar yang mengunjungisimpul secara pre oder
Kelebihan BFS :
- Tidak akan menemui jalan buntu.
- Menjamin ditemukannya solusi (jika solusinya memang ada) dan solusi yang ditemukan pasti yang paling baik.
- Jika ada satu solusi maka bread-first search akan menemukannya
Kelemahan BFS :
- Membutuhkan memori yang cukup banyak.
- Membutuhkan waktu yang cukup lama.