i paskaita 2014 (p170b121)
DESCRIPTION
AATRANSCRIPT
-
Algoritm sudarymas ir analiz
P170B121
doc. Dalius Makackas (teorija, laboratoriniai)
doc. Vytautas Pilkauskas (laboratoriniai)
-
Orientacinis tem turinys
Eil. Nr. Pavadinimai
1. Algoritm analizs pagrindai
1.1 Algoritmas ir jo darbo efektyvumo vertinimas
1.2 Funkcij augimo greiiai
1.3 Rekurentins formuls
1.4 Tikimybin algoritm analiz
2. Rikiavimo algoritm analiz
2.1 Rikiavimas burbuliuko ir terpimo metodais
2.2 Piramids ir greito rikiavimo metodai
2.3 Optimalus rikiavimas
2.4 Rikiavimo metodai, kuri darbo laikas auga tiesikai
3. Heavimo lentels
3.1 Heavimas grandinli metodu
3.2 Heavimo funkcijos
-
Eil. Nr. Pavadinimai
3.3 Atviro adresavimo heavimas
4. Irinkimo algoritmai
4.1 Binariniai paiekos mediai
4.2 Raudonai juodi mediai
Koliokviumas
5. Algoritm sudarymo principai ir j sudtingumo vertinimas
5.1 Dinaminis programavimas
5.2 Gods algoritmai
5.3 Amortizacin analiz
6. Algoritmai darbui su grafais
6.1 Grafo apraymo duomen struktros
6.2 Paieka gyl ir plot
6.3 Topologinis rikiavimas ir stipriai susieti komponentai
-
Eil. Nr. Pavadinimai
6.4 Minimals dengiantys mediai. Kruskalo ir Prima algoritmai
6.5 Trumpiausi keliai. BelmanoFordo ir Dikstra algoritmai
6.6 Dionsono ir FloidoVaralo algoritmai
6.7 Sraut tinklai. FordoFalkersono metodas
6.8 Maksimalaus por skaiiaus radimo udavinys
7. Udaviniai neturintys sprendimo algoritmo
8. N ir NP udaviniai
Egzaminas
Pagrindin literatra: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. Introduction to algorithms. MIT Press (2009), 1312 pages, ISBN 0262033844 (II leidimas, galima naudoti ir III leidim)
-
Savarankiko darbo uduoi grafikas ir j taka galutiniam paymiui
Ats
isk
ait
y
mo
fo
rma
Te
mo
s
Va
l. s
k.
ta
ka
(%
) Uduoties pateikimo (*) ir
atsiskaitymo savait (o)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17-
20
Laboratorinio darbo
gynimas
1-8 8 40 * 0 0
Egzaminas 1-8 12 30 * 0
Koliokviumas 1-8 12 30 * 0
I viso - 32 100
-
Vertinimas
I laboratorinis 20% (uduotys bus pateiktos 4 savait) II laboratorinis 20% (uduotys bus pateiktos atsiskaiius
I lab. darb) (Kiekviena vlavimo savait baudiama 1 balu, iki 5 bal;
t. y. naudojant formul [
7] + 1)
Koliokviumas 30% (bus vykdomas ratu) Egzaminas 30%
Galutinis paymys gaut vertinim suma.
-
Kaip suprasime algoritm
Algoritmas tai bet kuri korektikai apibrta skaiiavimo procedra, kuriai perduodama reikm ar reikmi rinkinys (jimas), o jos vykdymo rezultatas yra reikm ar reikmi rinkinys (ijimas).
Korektikas algoritmas jei kiekvienai jimo duomen rinkiniui skaiiavimo procedra grina korektik rezultat.
-
Ar reikia studijuoti algoritmus?
Tarkime turime begalini resurs (greitaveikos ir atminties) kompiuterius
Tarkime turime realius Ribota greitaveika Ribota atmintis
-
Pavyzdys:
A variantas B variantas
A algoritmas (n2) B algoritmas (n lg n)
-
A variantas B variantas
A algoritmas (n2) B algoritmas (n lg n)
1000 000 000 instrukcij 1000 000 instrukcij
Realizacija c1=2 (2n2) Realizacija c2=50 (n lg n)
Rikiuojame 1000 000
skaii Rikiuojame 1000 000 skaii
Darbo laikas
s
skomandos
komandos2000
10
1029
26
Darbo laikas
sskomandos
komandos100
10
10lg10506
66
Kai n=10 000 000 2,3 dienos
Kai n=10 000 000 20 min
-
Rib skaiiavimas
Liopitalio taisykl:
xgxf
xg
xf
nn
limlim , jei yra
ar
0
0.
-
Diferencijavimas
xf xf
a 0
ax 1aax
xe xe
xa xax ln
xln
x
1
xalog
ax ln
1
-
xx xxx ln1
xvxu xvxu
xvxu xvxuxvxu
xvu xvxvu