Expand description
Backtracking — “sinab ko’r, bo’lmasa orqaga qayt”.
Shablon:
fn qidir(holat):
agar holat to'liq bo'lsa → javobga qo'sh, qaytish
har bir mumkin bo'lgan qadam uchun:
agar qadam qoidaga zid bo'lmasa:
qadamni QO'YAMIZ
qidir(yangi holat) ← chuqurroq ketamiz
qadamni OLIB TASHLAYMIZ ← backtrack!Backtracking — bu kesilgan (pruned) to’liq izlash. Umid yo’q shoxni erta tashlab yuborish algoritmni amalda ishlaydigan qiladi.
Functions§
- n_
queens - N vazir masalasi:
n × nshaxmat taxtasiganta vazirni bir-birini urmaydigan qilib joylashning barcha usullari. - permutations
- Barcha o’rin almashtirishlar (permutations).
- subset_
sum - Berilgan summani beradigan barcha qism to’plamlar (subset sum).
- subsets
- Barcha qism to’plamlar (power set) —
2ⁿta.