Anda di halaman 1dari 3

Nama : Albertus Reno Kristiardy

Kelas : 3IA13
NPM : 50420105
Praktikum : Teori Graf
Minggu : ke-3

Program DFS

Penjelasan:

Membuat dictionary bedasarkan bentuk graph yang akan di uji. Setiap node dijadikan key. Jika ada node
yang memiliki node turunan, maka node dimasukkan kedalam value yang berbentuk array. Jika tidak
memiliki node turunan, maka value arraynya kosong. Graph di assign pada variabel graph

Kemudian mendlekarasikan variabel visited yang di assign dengan set(). Variabel visited ini digunakan
sebagai penanda untuk node-node yang sudah dikunjungi.
Lalu membuat sebuah function dfs dengan parameter visited, graph dan node. Function ini untuk
melakukan pencarian Depth First Search. Algoritma program adalah seperti berikut
1. Setelah function dipanggil, program akan mengecek node belum ada di visited. Jika iya, maka
node akan diprint lalu di tambahkan ke variabel visited. Node adalah key yang ada pada variabel
graph.

2. Kemudian program akan mengecek apakah node yang sudah cek sebelumnya, memiliki
neighbour(node turunan). Node yang memiliki Neighbour adalah node yang key-nya memiliki
value berupa array berisi node turunan. Jika ada maka program akan mengeksekusi neighbour
seperti Langkah pertama sampai semua neighbour sudah dikunjung.

3. Kemudian Kembali kelangkah pertama dan mengeksekui node berikutnya

Hasil output:
Bentuk program secara keseluruhan :

Anda mungkin juga menyukai