Apa itu rekursi?
Rekursi terjadi ketika sebuah fungsi memanggil dirinya sendiri untuk menyelesaikan versi masalah yang lebih kecil. Fungsi rekursif harus memiliki kasus dasar agar pemanggilan berhenti.
Contoh faktorial
Faktorial n, ditulis n!, adalah nĂ—(n-1)Ă—...Ă—1 untuk n positif, dan 0!=1. Definisi rekursifnya: faktorial(0)=1; faktorial(n)=nĂ—faktorial(n-1) untuk n>0.
Complete search dan pruning
Complete search memeriksa seluruh kandidat yang relevan. Pruning menghentikan eksplorasi suatu kandidat ketika sudah diketahui bahwa kandidat itu tidak mungkin menghasilkan solusi yang valid atau lebih baik. Pruning harus mempertahankan kebenaran hasil.
Sekilas greedy dan dynamic programming
Greedy memilih keputusan lokal berdasarkan aturan tertentu. Keputusan lokal tidak selalu menghasilkan solusi global terbaik, sehingga perlu pembuktian atau alasan yang sesuai. Dynamic programming menyimpan hasil submasalah agar tidak menghitung hal yang sama berulang kali.