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


Рекурсивни алгоритми в двоични дървета



страница13/43
Дата21.12.2022
Размер1.47 Mb.
#116011
1   ...   9   10   11   12   13   14   15   16   ...   43
CAA.doc
Свързани:
saap conspect

Рекурсивни алгоритми в двоични дървета.


Бин.дърв.мд се обхождат по няколко н-на:

-както и в широчина
Често е необх.да намерим стстите на разл. структурни парам.за 1 дърво,само по дадена връзка връзка към дървото.Следв.прог. съдържа рекурс.ф-ии за изчисл.броя на възлите и височината на дадено дърво.

int count (link h)


{ if ( h==NULL ) return 0;

return count (h->l) + count (h->r) + 1;} int height ( link h )


{ int u,v;

if ( h == NULL ) return -1;


u = height ( h->l ); v = height ( h->r);

if ( u > v ) return u+1; else return v+1; }


Др.ф-я ни показва рекурс.алг.за обхождане на дърво е този за отпечатване на дърво. Ако отпеч.елемента преди рекурс.викане,
получаваме прередно обхожд.Тази прог.допуска че елем.в възлите са символи:

void printnode ( char c, int h )


{ int i;

for ( i = 0; i < h; i++) printf (“ ”);


printf (“%c\n”, c); } void show ( link x, int h )

{ if ( x==NULL) {printnode(‘*’,h); return; } show (x -> r, h+1);


printnode (x -> item, h); show (x ->l, h+1); }


  1. Сортировки.Селективна сортировка.Сортиране чрез вмъкване.Примери.


В много сортиращи прил. е възм. метода. к-то тр. да се избер. да е прост. алгорит. Поради сл. причини: 1 – во. Често сорт. прог. се изп. само веднъж и ако елем. сорт. не е по – бавна от др. части на прогр. не е нужно да се търси по – бърз метод. Ако бр. на сорт ел. не е мн. гол.(до няк. 100) също може да се избере пост метод. 2 – ро. Елементар. сорт са по удобни за малки фаилове. Бав. методи са добри също за почти сортирани фаилове. или такива които съдърж.голям бр.повтар. се ключове.


Сподели с приятели:
1   ...   9   10   11   12   13   14   15   16   ...   43




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

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