Anda di halaman 1dari 8

Laporan Teori Graf

Breadth First Search & Depth First Search

Redemptus I.O.
(201603013)

JURUSAN TEKNIK INFORMATIKA


SEKOLAH TINGGI ILMU KOMPUTER “YOS SUDARSO”
PURWOKERTO
2017
BAB I
Pendahuluan
1.1 Latar Belakang
Breadth First Search dan Depth First Search adalah algoritma untuk mencari data tree atau
struktur data. Breadth First Search dan Depth First Search adalah algoritma yang cukup sederhana untuk
dipelajari pelajar bahasa pemrograman, oleh sebab itu laporan ini dibuat untuk menjelaskan bagaimana
algoritma Breadth First Search dan Depth First Search berjalan.
1.2 Tujuan
Tujuan dibuatnya laporan ini adalah untuk menjelasakan bagaimana algoritma Breadth First
Search dan Depth First Search berjalan dan memberi gambaran bagaimana hasil dari algoritma Breadth
First Search dan Depth First Search.
BAB II
Landasan Teori
Pengertian Breadth First Search
Algoritma BFS (Breadth First Search) adalah salah satu algoritma yang digunakan untuk
pencarian jalur. Contoh yang dibahas kali ini adalah mengenai pencarian jalur yang melalui semua titik.
Algoritma ini adalah salah satu algoritma pencarian jalur sederhana, dimana pencarian dimulai
dari titik awal, kemudian dilanjutkan ke semua cabang titik tersebut secara terurut. Jika titik tujuan
belum ditemukan, maka perhitungan akan diulang lagi ke masing-masing titik cabang dari masing-
masing titik, sampai titik tujuan tersebut ditemukan.
Salah satu cara implementasi BFS adalah dengan bantuan struktur data queue. Sama seperti
stack pada DFS, queue yang digunakan adalah queue yang isi elemennya adalah simpul pohon / tree.
Pengertian Depth First Search
DFS (Depth-First-Search) adalah salah satu algoritma penelusuran struktur graf / pohon
berdasarkan kedalaman. Simpul ditelusuri dari root kemudian ke salah satu simpul anaknya ( misalnya
prioritas penelusuran berdasarkan anak pertama [simpul sebelah kiri] ), maka penelusuran dilakukan
terus melalui simpul anak pertama dari simpul anak pertama level sebelumnya hingga mencapai level
terdalam.
Setelah sampai di level terdalam, penelusuran akan kembali ke 1 level sebelumnya untuk
menelusuri simpul anak kedua pada pohon biner [simpul sebelah kanan] lalu kembali ke langkah
sebelumnya dengan menelusuri simpul anak pertama lagi sampai level terdalam dan seterusnya.
BAB III
Pembahasan
BFS (Breadth First Search)
Algoritma Program BFS :
1. Masukkan simpul root ke dalam antrian
2. Periksa antrian terdepan apakah memiliki anak simpul
3. Jika ya, masukan semua anak simpul ke dalam antrian
4. Hapus antrian terdepan
5. Jika antrian kosong berhenti, tapi jika tidak kembali ke langkah dua

Output :

Graf :

0 2

1 3

Urutan Graf :
1. Dimulai dari simpul 2
2. Lalu ke simpul 0, simpul 0 di antrikan
3. Lalu ke simpul 3, simpul 3 diantrikan
4. Lalu ke simpul 0, tandai simpul 0 sudah dikunjungi, keluarkan simpul 0 dari antrian
5. Kembali ke simpul 2
6. Lalu ke simpul 3, tandai simpul 3 sudah dikunjungi, keluarkan simpul 3 dari antrian
7. Lalu ke simpul 1, antrikan simpul 1, tandai simpul 1 sudah dikunjungi, lalu keluarkan simpul
1 dari antrian
DFS (Depth First Transversal)
Algoritma Program DFS :
1. Masukkan simpul root ke dalam tumpukan dengan push
2. Ambil dan simpan isi elemen (berupa simpul pohon) dari tumpukan teratas
3. Hapus isi stack teratas dengan prosedur pop
4. Periksa apakah simpul pohon yang disimpan tadi memiliki anak simpul
5. Jika ya, push semua anak simpul yang dibangkitkan ke dalam stack
6. Jika tumpukan kosong berhenti, tapi jika tidak kembali ke langkah dua

Output :

Graf :

0 1 2 3

Urutan Graf :
1. Dimulai dari simpul 2
2. Lalu mengecek ke simpul 1
3. Lalu ke simpul 0, tandai simpul 0
4. Ke simpul 1, tandai simpul 1
5. Ke simpul 2, tandai simpul 2
6. Ke simpul 3, tandai simpul 3
Daftar Pustaka
https://onbuble.wordpress.com/2011/05/26/6/
https://piptools.net/algoritma-dfs-depth-first-search/
https://piptools.net/algoritma-bfs-breadth-first-search/
https://saungkode.wordpress.com/2014/04/16/penelusuran-pohon-biner-berdasarkan-
kedalaman-dengan-algoritma-dfs-stack-dan-secara-melebar-level-order-dengan-algoritma-bfs-
queue-dan-implementasinya-dalam-bahasa-c/

Anda mungkin juga menyukai