Забелязани грешки в книгата "Динамично оптимиране" от Емил Келеведжиев, съвместно издание на MusalaSoft и Анубис, София, 2001.


Стр. 31: В условието на задачата от раздел 3.3 е казано, че състоянието на отвореност на вратата при всяка една от стъпките във времето може да се увеличава с единица, намалява с единица или да остава непроменено. Приложената програма обаче решава задачата в случая, когато е изключена възможността вратата да се затваря. Необходимата корекция за да се постигне пълно решение на задачата е редът в програмният фрагмент на стр. 34 (деветият ред отгоре)

S_new[j] = MAX(S_old[j-1], S_old[j]);

да се замени с

S_new[j] = MAX(S_old[j-2], S_old[j-1], S_old[j]);

и се вземат необходимите мерки щото индексите на масивите да не излизат извън границите си.

Стр. 39, първи ред отгоре: Погрешно е отбелязано, че алгоритъмът изисква експоненциално време за работа. Всъщност броят на извикванията на функцията fm има порядък N^3. Даже може точно да се пресметне, че този брой е равен на (1/3)*N^3 - X^2 + (2/3)*N + 1.

Стр. 50, трети ред отгоре: Във формулата вместо min трябва да бъде написано max.


Авторът изказва благодарност на Деян Ламбов за посочване на част от грешките. (13 април 2001)