Backtracking algoritmi

Backtracking – biror muammoni yechish uchun har bir ehtimoliy kombinatsiyalarni tekshirib chiquvchi va natija topilganda dasturni to’xtatuvchi rekursiv algoritm. U tree ichida qidiruv yoki tree’ning barcha uchlarini (barglarini) topish kabi amallarni bajarib, har bir tree’ning uchlarigacha tekshirib chiqadi.

Dynamic programming

Dynamic programming (DP, dinamik dasturlash) deb muammoni kichik masalalarga ajratib, ularni faqat bir marta yechish va natijani keyingi bir xil tipdagi masalada ishlatish uchun saqlab turish texnikasiga aytiladi.