Salah satu metode penyelesaian permainan Sudoku adalah dengan menggunakan metode Bruteforce, yaitu mencoba semua kemungkinan yang ada. Dalam analisis algoritma, metode ini merupakan pemecahan yang cukup memakan waktu (khususnya jika ada banyak kemungkinan).
Bruteforce dapat dipercepat dengan memotong jalur penelusuran apabila memang sudah tidak valid pada suatu kemungkinan tertentu. Pemotongan jalur ini disebut dengan metode BackTracking. kali ini adalah membuat aplikasi untuk memecahkan Sudoku dengan menggunakan PHP. Langkah-langkahnya adalah sebagai berikut:
1. Untuk header aplikasi ini adalah: 2. Fungsi-fungsi awal yang dibutuhkan adalah fungsi untuk menguji validitas dari grid yang telah diisikan, serta menampilkan pesan kesalahan jika masukan yang diberikan tidak valid.
3. utama untuk menyelesaikan adalah pada function process. Function ini dipanggil secara rekursif untuk menguji kemungkinan pengisian pada grid. Proses backtracking terjadi pada function ini.
4. Fungsi untuk mencetak tampilan awal, serta menerima masukan data pada fungsi initProses.
5. Tampilan awal serta solusi yang didapatkan ketika dijalankan pada browser adalah sebagai berikut:
Tidak ada komentar:
Posting Komentar