Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
1
Számításelmélet 1
2
Számításelmélet Algoritmusok bonyolultsága Minden lehetséges inputra
időbonyolultság elemi lépések száma tárbonyolultság memóriaigény Minden lehetséges inputra Legrosszabb esetre
3
Keresések n adatelemre – n hosszúságú inputra Lineáris keresés:
legrosszabb esetben: n összehasonlítás időbonyolultság: Bináris keresés: legrosszabb esetben: időbonyolultság:
4
„Ordó” jelölés
5
Rendezések n elemű tömb rendezése összehasonlítások száma
elemcserék száma
6
Buborék-rendezés összehasonlítások száma: elemcserék száma:
minden esetben: elemcserék száma: legrosszabb esetben: (fordítottan rendezett tömb) for (i=n-1; i>0; i--) for (j=0; j<i; j++) if (T[j+1] < T[j]) swap(T[j+1], T[j]);
7
Beszúrásos rendezés Lineáris kereséssel: összehasonlítások száma:
legrosszabb esetben: (rendezett tömb) elemcserék száma: legrosszabb esetben: (fordítottan rendezett tömb)
8
Beszúrásos rendezés Bináris kereséssel: összehasonlítások száma:
legrosszabb esetben: elemcserék száma:
9
Összefésüléses rendezés
összehasonlítások száma: legrosszabb esetben: elemcserék száma: sort(T[1..n]) { if (n==1) return T; A=sort(T[1 .. n/2]); B=sort(T[n/ n]); return merge(A,B); }
10
Rendezések Buborék-rendezés: Beszúrásos rendezés:
lineáris kereséssel: bináris kereséssel: Összefésüléses rendezés:
11
Gráfok Gráf: Élekhez költség: Út: csúcsok (vertices) halmaza,
élek (edges) halmaza, Élekhez költség: Út: költsége:
12
Elérhetőség gráfokban
n csúcsú gráfban Van-e út két csúcs között? mélységi keresés szélességi keresés Melyik a legolcsóbb út két adott csúcs között? egy adott csúcsból az összes többibe? Dijsktra algoritmusa bármely két csúcs között? Floyd módszere
13
Hamilton-kör több mint 100 éve tanulmányozzák „naív” algoritmus:
csúcsok permutációja kör-e időbonyolultság: Van-e polinomiális algoritmus?
14
Bonyolultsági függvények
Logaritmikus: Lineáris: Polinomiális: négyzetes: köbös: Exponenciális: Faktoriális: stb. bonyolultság
15
Közlekedési lámpák lámpák = {ac,ad,bc,bd,ec,ed} lámpák {piros,zöld}
konfliktuslehetőségek: (ac,bd) tiltott (ed,bc) nem tiltott
16
Közlekedési lámpák Gráffal ábrázolás: csúcsok: ac,ad,bc,bd,ec,ed
élek: (v,w) él, ha v és w konfliktusos ac bc ec ad bd ed
17
Közlekedési lámpák Gráf színezése: Nem ismert polinomiális algoritmus
ha (v,w) él, akkor v és w színe különböző Nem ismert polinomiális algoritmus ac bc ec ad bd ed
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.