Влияние върху производителността


пр.:procedure Recurse(num:Integer); begin



страница6/43
Дата21.12.2022
Размер1.47 Mb.
#116011
1   2   3   4   5   6   7   8   9   ...   43
CAA.doc
Свързани:
saap conspect

пр.:procedure Recurse(num:Integer); begin


Recurse(
)

end ;


преструктурираме: procedure Recurse(num:Integer);

begin


Recurse(
)

end ;


и procedure Recurse(num:Integer); var pc:Integer;

begin


pc:=1; repeat case pc of

begin


if(базов случай) then pc:=2 //прескачаме еркурсията

else begin //съхраняваме пром. за следрекурсивното викане и рс=2;устано-вяваме пром. нужни при рекурсия (напр. n:=n-1) и преход към начало на рекурсията:


pc:=1; end ; end; begin

pc:=0; end;


//код след рекурсията

  1. алг.промяна при сложни случаи на взаимна рекурсия:пр. криви на Шерпински:

при този случай се оформят отделни процедури с взаимна рекурсия:
SierpA,SierpB,SierpC and SierpD.
Всяка от тях вика останалите,които от своя страна я викат рекурсивно.Всяка служи за изчертаване на горна,лява,долна и дясна част от общата картина . При рекурсивен вариант на всяка процедура оценката на алгоритмичната сложност е О(4N).
Нерекурсивният вариант на същата прог. е с много по-добра оценка-О(N4),допустима е голяма дълбочина на вложеност,но разбираемостта на кода е по-лоша.
  1. Анализ на алгоритми. Математически обозначения,дефиниции и правила в анализа.


Анализът на алг.е ключът към пълноценно-то им разбиране,за да мд ги прилагаме ефективно към практически зад.Той играе роля във всяка стъпка от процеса на конструиране и писане на алг.Една от първите стъпки,за да разберем поведението на алг е да направим емпиричен анализ.Напр.ако имаме два алг за решаване на една и съща задача,изпълняваме ги и двата,за да видим кой работи по-бавно.Когато обаче емпирич изследвания почнат да отнемат повече време,се нуждаем от матем.анализ.Осн.причини,за да извърш. матем анализ на алг. са
-за да сравн разл.алг. за една и съща задача, -за да предвижд.произвстта в нова среда, -за да задаваме ст-сти на парам на алг
Това прави възможно да се предвиди точно колко дълго ще работи дадена програма, или дали дадена програма ще работи по-добре от друга при опр обстоятелства. Матем.означения,които се срещат във формулите,описващи поведението на алг са:


Сподели с приятели:
1   2   3   4   5   6   7   8   9   ...   43




©obuch.info 2024
отнасят до администрацията

    Начална страница