Určování složitosti algoritmů. Základy diskrétní matematiky, BI-ZDM
|
|
- Vít Moravec
- před 5 lety
- Počet zobrazení:
Transkript
1 Určování složitosti algoritmů doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky FIT České vysoké učení technické v Praze c Josef Kolar, 2011 Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 1 Evropský sociální fond. Praha& EU: Investujeme do vaší budoucnosti doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 1/ 15
2 Organizace předmětu Organizace předmětu ZDM Předmět teoretického informatického základu. Cílem je seznámit se svlastnostmidiskrétníchstrukturajejichvyužitímvinformatice shlavnímidruhybinárníchrelacíajejichvlastnostmi stechnikouaširokýmvyužitímmatematickéindukcevinformatice sezákladnímikombinatorickýmipostupy Cvičení: seminární, u tabule aktivníúčast12b 4průběžnétestypo4b=16b 6domácíchúlohpo3b(počítajísemax.4=12b). Nazápočetjetřebaminimálně24bze40b. Zkouška: M-midtermv9.týdnu24b,minimálně15b R-roztřel16b,M+Rminimálně24b V-velkápísemka(20-5)b U-ústní(10-5)b doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 2/ 15
3 Organizace předmětu Reference Při přípravě předmětu jsem využíval mnoha zdrojů, především pak: Habala, P.: Diskrétní matematika(viz URL s laskavým svolením autora je text k dispozici i studentům BI-ZDM. Kolář,J.-Štěpánková,O.-Chytil,M.:Logika,algebryagrafy. SNTL,Praha1989(pokudjiněkdosežene...). Johnsonbaugh, R.: Discrete Mathematics. Prentice Hall, New Jersey Graham, R.L.- Knuth, D.E.- Patashnik, O.: Concrete Mathematics. Addison-Wesley, Boston Použitelné jsou ovšem i libovolné další zdroje, které se věnují tématice zahrnuté do obsahu předmětu BI-ZDM. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 3/ 15
4 Problém vs. algoritmus vs. program Problémy a algoritmy Výpočetní problém V: úkol zpracovat/transformovat vstupní data In na výstupní data Out s požadovanými vlastnostmi. Algoritmus A: výpočetní postup řešení problému V, čili posloupnost výpočetních kroků, která vezme vstupní data a vyprodukuje výstupní data, požadovaných vlastností podle zadání problému. Instance problému: problém s konkrétními daty potřebnými pro jeho řešení. Příklad 1 Problém řazení čísel(sorting Problem). Vstup:Posloupnostčísel In=(a 1,a 2,...,a n ). Výstup:Permutace Out=(a 1,a 2,...,a n)posloupnosti Intaková, že a 1 a 2... a n. Instance problému řazení: Seřaďtevzestupněposloupnost In=(75,11,34,176,59,6,54). doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 4/ 15
5 Problém vs. algoritmus vs. program Korektnost algoritmu Korektníalgoritmus Aproproblém V: prokaždouinstanciproblému V, algoritmus A skončí v konečném čase se správným výstupem.pakříkáme,žealgoritmus Ařešíproblém V. Čili: A není korektní algoritmus, pokud: pro některou instanci problému neskončí(např. se zacyklí ) nebo pro některou instanci problému skončí s nesprávným výstupem. Jak se přesvědčíme, že nějaký algoritmus je korektní? doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 5/ 15
6 Problém vs. algoritmus vs. program Zápis algoritmů Používaná forma zápisu algoritmů na přednáškách ZDM: slovní popis pseudokód program v jazyce systému Mathematica Program P: zápis(implementace) algoritmu A v programovacím jazyku, spustitelný(proveditelný) na nějakém počítači s nějakým OS a SW prostředím. jedenalgoritmus A víceprogramů P 1,P 2,... časové a paměťové nároky různých programů téhož algoritmu mohou záviset na architektuře počítače nikoli ale řádově. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 6/ 15
7 Složitost algoritmů Algoritmy mají různou složitost Projedenproblém V mohouexistovatrůznéalgoritmy A 1,A 2,..., pro jeho řešení. Jejich nároky na výpočetní prostředky(složitost) se mohou výrazně (řádově) lišit. Zvláště se mohou lišit svojí rychlostí(operační složitostí). Analýza složitosti algoritmu: výpočet/odhad/predikce požadavků na výpočetní prostředky, které provedení algoritmu bude vyžadovat v závislosti na velikosti vstupních dat. Velikost vstupních dat závisí na specifikaci daného problému: počet bitů vstupního čísla délka vstupní posloupnosti čísel rozměry vstupní matice početznakůvstupníhotextu,... doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 7/ 15
8 Složitost algoritmů Výpočetní(operační) složitost Varianty: doba běhu algoritmu doba výpočtu počet provedených operací počet provedených instrukcí(aritmetických, logických, paměťových) počet transakcí nad databází Případová analýza složitosti: Algoritmus obsahuje podmíněné příkazy jeho složitost obecně závisí: nejen na velikosti vstupních dat, ale také na jejich hodnotách(algoritmus je citlivý na vstupní data). doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 8/ 15
9 Složitost algoritmů Příklad algoritmů s různou složitostí Příklad algoritmů s různou složitostí Příklad 2 Zjistěte,zdajsouvpoli a[0,...,n 1]všechnyhodnotynavzájemrůzné true false doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 9/ 15
10 Složitost algoritmů Příklad algoritmů s různou složitostí 1.algoritmus A 1 (intuitivní,jednoduchý) Myšlenka: porovnat každý prvek s každým, zda se shodují. bool ruzne = true; for (i=0; (i<n); i++) for (j=0; (j<n); j++) if ((i!=j) && (a[i]==a[j])) ruzne = false; Početiterací: n 2. Početporovnání:přibližně h 1 (n). =4n 2. Kromě toho se provádí řada dalších operací, např. čtení z paměti. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 10/ 15
11 Složitost algoritmů Příklad algoritmů s různou složitostí 2.lepšíalgoritmus A 2 Myšlenka: ukončit cyklus, pokud jsou nalezeny stejné hodnoty. bool ruzne = true; for (i=0; (i<n) && ruzne; i++) for (j=0; (j<n) && ruzne; j++) if ((i!=j) && (a[i]==a[j])) ruzne = false; Početiterací:1až n 2. Početporovnání: h 2 (n). =4ažpřibližně4n 2. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 11/ 15
12 Složitost algoritmů Příklad algoritmů s různou složitostí 3.ještělepšíalgoritmus A 3 Myšlenka: Neporovnávat každý prvek s každým prvkem dvakrát (rovnost je symetrická) rovnou vynechat diagonálu. bool ruzne = true; for (i=1; (i<n) && ruzne; i++) for (j=0; (j<i) && ruzne; j++) if ( /*... */ (a[i]==a[j])) ruzne = false; Početiterací:1až n(n 1)/2. Početporovnání: h 3. =3ažpřibližně3n(n 1)/2. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 12/ 15
13 Složitost algoritmů Příklad algoritmů s různou složitostí 4.ještělepšíalgoritmus A 4 Myšlenka: Hodnoty v poli nejprve seřadit. bool ruzne = true; seřaď vstupní pole a[0,...,n-1]; for (i=1; (i<n) && ruzne; i++) if (a[i]==a[i-1]) ruzne = false; Početiterací:1až(n 1). Počet porovnání: 2 až přibližně 2n. Celkovásložitost:nejvýšepřibližně h 4 (n). = knlogn+2n, kje nějaká konstanta. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 13/ 15
14 Asymptotická matemetika Vyjádření složitosti algoritmu Viděli jsme, že složitost algoritmu může obecně záviset na hodnotách vstupních dat. Proto je obecně potřebné vyjádřit složitost algoritmu: vnejlepšímpřípadě, vnejhoršímpřípadě, vprůměrnémpřípadě. Poslední případ je nejobtížnější, protože není vždy zřejmé, co to jsou vstupní data v průměrném případě. Typicky náhodně vygenerovaná, aletonemusíbýtvpraxisplněno. Platí pro složitost časovou, paměťovou, komunikační, transakční,... doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 14/ 15
15 Asymptotická matemetika Umění analýzy složitosti algoritmu Analýza složitosti algoritmů vyžaduje řadu znalostí a schopností: znalost asymptotických odhadů řádu růstu funkcí schopnost abstrakce výpočetního modelu znalosti z diskétní matematiky kombinatoriky znalost sčítání řad a řešení rekurentních rovnic znalosti základů teorie pravděpodobnosti adalší doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 15/ 15
16 Asymptotická matemetika Výpočetní model RAM model Pro analýzu složitosti algoritmu potřebujeme model výpočetního systému, na kterém algoritmus bude hypoteticky implementován. Nejčastější je jednoprocesorový Random Access Machine(RAM) model: datauloženavadresovatelnépaměti aritmetickologické,řídící,paměťovéinstrukce časovásložitostinstrukcíjejednotkovánebokonstatní instrukcejsouprováděnypostupně(sekvenčně). doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 16/ 15
17 Asymptotická matemetika Asymptotická složitost Asymptotická složitost Přesnou složitost lze určit jen v případě jednodušších algoritmů, cožvevětšiněpřípadůnestojízanámahu, vpřípaděsložitýchalgoritmůjetoobtížnéažnemožné. Proto se to typicky nedělá. Z praktického hlediska nás zajímá především, jak se bude algoritmus chovat pro velké( ) instance problému. Typicky nám stačí vyjádřit řád růstu funkce vyjadřující složitost se zanedbáním příspěvků nižších řádu. Příklad 3 Složitost4.algoritmujenejvýše h 4 (n)=knlogn+3n. = knlognpro velká n řazení dominuje zbytku algoritmu. DEMO1 doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 17/ 15
18 Asymptotická matemetika Asymptotická složitost Asymptotická složitost(pokr.) Zajímá nás, jak složitost algoritmu závisí na velikosti vstupních dat v limitě, pokud velikost instance problému poroste nade všechny meze. Pro první porozumění chování algoritmu nás nemusejí zajímat ani multiplikativní konstanty říkáme, že nás zajímá asymptotická složitost. Je to složitost vyjádřená pro instance problému dostatečně velké, aby se jasně projevil řád růstu složitosti v závislosti na velikosti vstupních dat. Asymptoticky lepší algoritmus bude lepší pro všechny instance problému kromě konečného počtu menších instancí. Příklad 4 Hodnotyfce f(n)=1.5n n+30provelká nbudouvelmiblízké hodnotámfce g(n)=1.5n 2 nebofce h(n)=1.5n 2 25n+44.DEMO2 doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 18/ 15
19 Asymptotická matemetika Asymptotická aritmetika Asymptotická aritmetika N + =množinakladnýchpřirozenýchčísel R + =množinakladnýchreálnýchčísel Uvažujeme pouze kladné funkce jedné přirozené proměnné n: f,g,...:n + R +. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 19/ 15
20 Asymptotická matemetika Asymptotická horní mez Asymptotická horní mez: O-notace Definice 5 (Relační)Jsou-lidányfunkce f(n)ag(n),pakřekneme,že f(n)je nejvýše řádu g(n), psáno f(n) = O(g(n)), jestliže c R + n 0 N + n n 0 : f(n) c.g(n). Alternativní definice. Definice 6 ( Množinová) Je-li dána funkce g(n), pak O(g(n)) je definována jako (nekonečná) množina funkcí {f(n): c R + n 0 N + n n 0 : f(n) c.g(n)}. O-notaci používáme pro vyjádření horní meze růstu funkce až na multiplikativní konstantu. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 20/ 15
21 Asymptotická matemetika Asymptotická horní mez Asymptotická horní mez: O-notace(pokr.) doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 21/ 15
22 Asymptotická matemetika Asymptotická horní mez Landauova symbolika a O-notace Vztahnaší O-notaceaLandauovysybmolikyzBI-ZMA(označmeji O L )? Definice 8 a n = O L (b n ) df existuje(ω n ) taková,že (ω n ) jeomezenáposloupnostaa n = ω n b n prokaždé n N +. f(n)=o(g(n)) df c R + n 0 N + n n 0 : f(n) c.g(n). V našem případě pracujeme pouze s posloupnostmi/funkcemi, jež mají kladnéhodnoty,(a n ) f(n), (b n ) g(n) a(ω n ) ω(n). O L O: ω(n)jeomezená ω(n) =ω(n) K pro n N + pro c=ka n n 0 =1platí f(n)=ω(n)g(n) K.g(n) O O L : zvolme ω(n)= f(n) g(n),pakpro n n 0je f(n) c.g(n) neboli ω(n) c.položíme-li K= max(ω(1),...,ω(n 0 1),c),pak ω(n) Kprovšechna n N +. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 22/ 15
23 Asymptotická matemetika Asymptotická dolní mez Asymptotická dolní mez: Ω-notace Definice 9 (Relační)Jsou-lidányfunkce f(n)ag(n),pakřekneme,že f(n)je nejméně řádu g(n), psáno f(n) = Ω(g(n)), jestliže c R + n 0 N + n n 0 : c.g(n) f(n). Alternativní definice. Definice 10 ( Množinová) Je-li dána funkce g(n), pak Ω(g(n)) je definována jako (nekonečná) množina funkcí {f(n): c R + n 0 N + n n 0 : c.g(n) f(n)}. Ω-notaci používáme pro vyjádření dolní meze růstu funkce až na multiplikativní konstantu. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 23/ 15
24 Asymptotická matemetika Asymptotická dolní mez Asymptotická dolní mez: Ω-notace(pokr.) doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 24/ 15
25 Asymptotická matemetika Asymptotická těsná mez Asymptotická těsná mez: Θ-notace Definice 12 (Relační)Jsou-lidányfunkce f(n)ag(n),pakřekneme,že f(n)je téhožřádujako g(n),psáno f(n)=θ(g(n)),jestliže c 1,c 2 R + n 0 N + n n 0 : c 1.g(n) f(n) c 2.g(n). Alternativní definice. Definice 13 ( Množinová) Je-li dána funkce g(n), pak Θ(g(n)) je definována jako (nekonečná) množina funkcí {f(n): c 1,c 2 R + n 0 N + n n 0 : c 1.g(n) f(n) c 2.g(n)}. Θ-notaci používáme pro vyjádření faktu, že dvě funkce rostou asymptoticky stejně až na multiplikativní konstantu. Zápisy f(n) Θ(g(n))af(n)=Θ(g(n))jsourovnocennéazáleží pouzenakontextu,kterýjevhodnější(totéžplatípro O,Ω,o,ω). doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 25/ 15
26 Asymptotická matemetika Asymptotická těsná mez Asymptotická těsná mez: Θ-notace(pokr.) Příklad 14 3n 2 5n+15=Θ(n 2 ) Prokaždýpolynomplatí d i=0 a in i =Θ(n d ),pokud a d > doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 26/ 15
27 Asymptotická matemetika Asymptotická těsná mez Příklad použití Θ-notace Vztah mezi asymptotickou horní, dolní a těsnou mezí: f(n)=θ(g(n))implikuje f(n)=o(g(n)) (Θ je silnější podmínka než O neboli Θ(g(n)) O(g(n))). f(n)=θ(g(n))implikuje f(n)=ω(g(n)) (Θ je silnější podmínka než Ω neboli Θ(g(n)) Ω(g(n))). f(n)=θ(g(n)) f(n)=o(g(n)) f(n)=ω(g(n)) doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 27/ 15
28 Asymptotická matemetika Asymptotická těsná mez Příklad použití Θ-notace Příklad 15 Ukážeme,že f(n)=3n 2 5n+15=Θ(n 2 ). Pro c 1 =2,c 2 =4an 0 =3platí neboť máme 2n 2 3n 2 5n+15 3n 2 pro n 3, 2n 2 3n 2 5n+15poodečtení2n 2 dostaneme 0 n 2 5n+15,cožplynezn 2 5n+15=(n 3) 2 +n+6 0 3n 2 5n+15 3n 2 poodečtení3n 2 5n+15 0,cožplatípro n=3atedyipro n 3,neboťlevá strana je klesající funkce. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 28/ 15
29 Asymptotická matemetika Asymptotická větší horní mez Striktně větší horní mez: o-notace Definice 16 (Relační)Jsou-lidányfunkce f(n)ag(n),pakřekneme,že f(n)je striktně nižšího řádu než g(n), psáno f(n) = o(g(n)), jestliže c R + n 0 N + n n 0 : f(n) < c.g(n). Alternativní definice. Definice 17 ( Množinová) Je-li dána funkce g(n), pak o(g(n)) je definována jako (nekonečná) množina funkcí {f(n): c R + n 0 N + n n 0 : f(n) < c.g(n)}. Zápisy f(n) o(g(n))af(n)=o(g(n))jsouopětrovnocenné. Vyjadřují,že g(n)jepro f(n)asymp.hornímezívyššíhořádu. Pakplatílim n f(n) g(n) =0,tj. f(n)=o L(g(n)) vlandauověnotaci. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 29/ 15
30 Asymptotická matemetika Asymptotická menší dolní mez Striktně menší dolní mez: ω-notace Definice 18 (Relační)Jsou-lidányfunkce f(n)ag(n),pakřekneme,že f(n)je striktně vyššího řádu než g(n), psáno f(n) = ω(g(n)), jestliže c R + n 0 N + n n 0 : c.g(n) < f(n). Alternativní definice. Definice 19 ( Množinová) Je-li dána funkce g(n), pak ω(g(n)) je definována jako (nekonečná) množina funkcí {f(n): c R + n 0 N + n n 0 : c.g(n) < f(n)}. Zápis f(n)=ω(g(n))vyjadřuje,že g(n)jepro f(n)asymptotickou dolní mezí nižšího řádu. Pakplatílim n f(n) g(n) =. Žádná multiplikativní konstanta neumožní, aby g(n) dostihlo f(n). doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 30/ 15
31 Asymptotická matemetika Asymptotická menší dolní mez Použití asymptotické notace Asymptotická notace nám umožňuje zjednodušovat výrazy zanedbáním nepodstatných částí. Znamená f(n)=θ(g(n)) totéž,jako f(n) g(n)vlandauově notaci? DEMO 5 Coznamenázápis f(n)=4n 3 +Θ(n 2 )? VýrazΘ(n)zastupujeanonymnífunkcizmnožinyΘ(n 2 )(nějaká kvadratická funkce), jejíž konkrétní podobu prozatím zanedbáváme. Co znamenají zápisy Θ(1), O(1), Ω(1)? Přesněji neurčené konstantní meze. Coznamenázápis f(n)=o(n O(1) )? f(n)jeshoraomezenanějakoupolynomiálnífunkcí n c,kde csice přesně neznáme, ale víme, že to je konstanta. doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 31/ 15
32 Asymptotická matemetika Zákony asymptotické aritmetiky Zákony asymptotické aritmetiky Tranzitivita: f(n)=o(g(n)) g(n)=o(h(n)) f(n)=o(h(n)) (podobněproω,θ,o,ω) Reflexivita: f(n)=o(f(n)) (podobněproω,θ) Symetrie: f(n)=θ(g(n)) g(n)=θ(f(n)) Transpoziční f(n)=o(g(n)) g(n)=ω(f(n)) symetrie: f(n)=o(g(n)) g(n)=ω(f(n)) Inkluze: f(n)=o(g(n)) f(n)=o(g(n)) f(n)=θ(g(n)) f(n)=o(g(n)) f(n)=ω(g(n)) f(n)=ω(g(n)) f(n)=θ(g(n)) f(n)=ω(g(n)) Všimněte si následující analogie s porovnáváním čísel: O Ω Θ o ω odpovídá = < > doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 32/ 15
33 Asymptotická matemetika Základní funkce Základní funkce jedné proměnné dolníceláčást x,horníceláčást x polynomiální exponent >1,např. n 2 lineární mocninnásexponentem <1,např. 4 n exponenciální,např.2 n polylogaritmické,např.log 3 n faktoriální n! logaritmickáiteracelog n Fibonacciho čísla F(n)... doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 33/ 15
34 Asymptotická matemetika Základní funkce Porovnání řádu funkcí Příklad 20 1 Dokažte,želogn=o(n c )prolibovolnoukonstantu0 < c <1. 2 Seřaďte následující funkce dle jejich asymptotické složitosti. n 3 logn! e n 2 n n log(n!) loglogn 1.5 n n2 n n! n logn logn log 2 n 2 2n n 2 logn 2 n n/logn 2 log2 n n 1/logn logn nlogn doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 34/ 15
35 Asymptotická matemetika Základní funkce Srovnání časových složitostí Předpokládejme,že1operacetrvá1µsažepočetoperacíjedánfunkcív prvním sloupci. Doba výpočtu je pak pro různé hodnoty n následující: (Připomeňme,žepočetatomůvevesmíruseodhadujena10 80 astáří vesmíruna let.) n logn 3,3 µs 4,3µs 5µs 5,8µs 9µs 10µs n 10µs 20µs 40µs 60µs 0, 5ms 1ms n log n 33µs 86µs 0, 2ms 0, 35ms 4, 5ms 10ms n 2 0,1ms 0,4ms 1,6 ms 3,6ms 0,25s 1s n 3 1ms 8ms 64ms 0,2s 125s 17min n 4 10ms 160ms 2,56s 13s 17h 11,6dní 2 n 1ms 1s 12,7dní 3600let let let n! 3,6s 77100let let let let let doc. Josef Kolář (FIT ČVUT) Určování složitosti algoritmů ZDM, ZS 2011/12, Lekce 1 35/ 15
Úvod do problematiky
Úvod do problematiky Karel Richta a kol. Přednášky byly připraveny i s pomocí materiálů, které vyrobili Marko Berezovský, Petr Felkel, Josef Kolář, Michal Píše a Pavel Tvrdík Katedra počítačů Fakulta elektrotechnická
VíceAlgoritmizace. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010
Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Úvod stránky předmětu: https://cw.felk.cvut.cz/doku.php/courses/a4b33alg/start cíle předmětu Cílem je schopnost samostatné implementace různých variant základních
VíceDigitální učební materiál
Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_146_IVT Autor: Ing. Pavel Bezděk Tematický okruh:
VíceČasová složitost / Time complexity
Časová složitost / Time complexity Jan Kybic http://cmp.felk.cvut.cz/~kybic kybic@fel.cvut.cz 2016 2018 1 / 24 Složitost algoritmů Algorithm complexity Časová a paměťová složitost Trvání výpočtu v závislosti
VíceSložitost 1.1 Opera ní a pam ová složitost 1.2 Opera ní složitost v pr rném, nejhorším a nejlepším p ípad 1.3 Asymptotická složitost
1 Složitost 1.1 Operační a paměťová složitost Nezávislé určení na konkrétní implementaci Několik typů operací = sčítání T+, logické T L, přiřazení T A(assign), porovnání T C(compare), výpočet adresy pole
VíceSložitost algoritmů. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava
Složitost algoritmů doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 27. prosince 2015 Jiří Dvorský (VŠB TUO) Složitost algoritmů
VíceŘešení rekurentních rovnic 2. Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 11
Řešení rekurentních rovnic 2 doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky FIT České vysoké učení technické v Praze c Josef Kolar, 2011 Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce
VíceSložitost algoritmů. Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol.
Složitost algoritmů Karel Richta a kol. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Karel Richta a kol., 2017 Datové struktury a algoritmy, B6B36DSA 02/2017, Lekce 3
Více2. Složitost, grafové algoritmy (zapsal Martin Koutecký)
2. Složitost, grafové algoritmy (zapsal Martin Koutecký) Model Ram Při analýze algoritmu bychom chtěli nějak popsat jeho složitost. Abychom mohli udělat toto, potřebujeme nejprve definovat výpočetní model.
VíceAlgoritmy I, složitost
A0B36PRI - PROGRAMOVÁNÍ Algoritmy I, složitost České vysoké učení technické Fakulta elektrotechnická v 1.01 Rychlost... Jeden algoritmus (program, postup, metoda ) je rychlejší než druhý. Co ta věta znamená??
VíceDatabáze, sítě a techniky programování X33DSP
Databáze, sítě a techniky programování X33DSP Anotace: Náplní předmětu jsou některé techniky a metody používané ve výpočetních systémech zaměřených na biomedicínské inženýrství. Cílem je položit jednotný
VíceNP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
NP-ÚPLNÉ PROBLÉMY Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 13 Evropský sociální fond Praha & EU: Investujeme do
VíceDynamické programování
Dynamické programování prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA)
VíceDatové struktury 2: Rozptylovací tabulky
Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy
VíceLineární algebra : Násobení matic a inverzní matice
Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních
VíceMimo samotné správnosti výsledku vypočteného zapsaným algoritmem je ještě jedno
12 Délka výpočtu algoritmu Mimo samotné správnosti výsledku vypočteného zapsaným algoritmem je ještě jedno neméně důležité hledisko k posouzení vhodnosti algoritmu k řešení zadané úlohy. Jedná se o čas,
VíceIB015 Neimperativní programování. Časová složitost, Typové třídy, Moduly. Jiří Barnat Libor Škarvada
IB015 Neimperativní programování Časová složitost, Typové třídy, Moduly Jiří Barnat Libor Škarvada Sekce IB015 Neimperativní programování 07 str. 2/37 Časová složitost Časová složitost algoritmu IB015
VíceSložitosti základních operací B + stromu
Složitosti základních operací B + stromu Radim Bača VŠB Technická univerzita Ostrava Fakulta elektrotechniky a informatiky Katedra informatiky ŠKOMAM 2010-1- 28/1/2010 Složitosti základních operací B +
VíceEkvivalence. Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 5
doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky FIT České vysoké učení technické v Praze c Josef Kolar, 2011 Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 5 Evropský sociální fond.
VíceMatematická indukce a správnost programů. Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 13
Matematická indukce a správnost programů doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky FIT České vysoké učení technické v Praze c Josef Kolar, 2011 Základy diskrétní matematiky, BI-ZDM ZS
VíceMIDTERM D. Příjmení a jméno:
MIDTERM D Příjmení a jméno: 1 2 3 4 5 6 7 8 9 10 11 12 1 Doplňte místo otazníku ten ze symbolů, aby platil vztah (log n) / (log n 2 ) =?(1/ n): A) o B) O (a současně nelze použít ani o ani Θ) C) Θ D) Ω
VíceČasová složitost algoritmů
Časová složitost algoritmů Důležitou vlastností algoritmu je časová náročnost výpočtů provedené podle daného algoritmu Ta se nezískává měřením doby výpočtu pro různá data, ale analýzou algoritmu, jejímž
VíceAlgoritmizace složitost rekurzivních algoritmů. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010
složitost rekurzivních algoritmů Jiří Vyskočil, Marko Genyg-Berezovskyj 2010 Vyjádřen ení složitosti rekurzivního algoritmu rekurentním m tvarem Příklad vyjádření složitosti rekurzivního algoritmu rekurencí:
VíceŘešení rekurentních rovnic 3. Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce 12
Řešení rekurentních rovnic 3 doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky FIT České vysoké učení technické v Praze c Josef Kolar, 2011 Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce
VíceZimní semestr akademického roku 2014/ prosince 2014
Cvičení k předmětu BI-ZMA Tomáš Kalvoda Katedra aplikované matematiky FIT ČVUT Matěj Tušek Katedra matematiky FJFI ČVUT Obsah Cvičení Zimní semestr akademického roku 2014/2015 2. prosince 2014 Předmluva
VíceÚvod do informatiky. Miroslav Kolařík
Úvod do informatiky přednáška jedenáctá Miroslav Kolařík Zpracováno dle P. Martinek: Základy teoretické informatiky, http://phoenix.inf.upol.cz/esf/ucebni/zti.pdf Obsah 1 Složitost algoritmu 2 Třídy složitostí
VíceAlgoritmus. Přesné znění definice algoritmu zní: Algoritmus je procedura proveditelná Turingovým strojem.
Algoritmus Algoritmus je schematický postup pro řešení určitého druhu problémů, který je prováděn pomocí konečného množství přesně definovaných kroků. nebo Algoritmus lze definovat jako jednoznačně určenou
VíceObsah přednášky. Analýza algoritmu Algoritmická složitost Návrhy algoritmů Urychlování algoritmů 1/41
Obsah přednášky Analýza algoritmu Algoritmická složitost Návrhy algoritmů Urychlování algoritmů 1/41 Analýza algoritmu Proč vůbec dělat analýzu? pro většinu problémů existuje několik různých přístupů aby
VíceDigitální učební materiál
Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_145_IVT Autor: Ing. Pavel Bezděk Tematický okruh:
VíceVyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky
VíceÚVODNÍ ZNALOSTI. datové struktury. správnost programů. analýza algoritmů
ÚVODNÍ ZNALOSTI datové struktury správnost programů analýza algoritmů Datové struktury základní, primitivní, jednoduché datové typy: int, char,... hodnoty: celá čísla, znaky, jednoduché proměnné: int i;
VíceAplikovaná numerická matematika - ANM
Aplikovaná numerická matematika - ANM 3 Řešení soustav lineárních rovnic iterační metody doc Ing Róbert Lórencz, CSc České vysoké učení technické v Praze Fakulta informačních technologií Katedra počítačových
Více10. Složitost a výkon
Jiří Vokřínek, 2016 B6B36ZAL - Přednáška 10 1 Základy algoritmizace 10. Složitost a výkon doc. Ing. Jiří Vokřínek, Ph.D. Katedra počítačů Fakulta elektrotechnická České vysoké učení technické v Praze Jiří
VíceVyvažování a rotace v BVS, všude se předpokládá AVL strom
Vyvažování a rotace v BVS, všude se předpokládá AVL strom 1. Jednoduchá levá rotace v uzlu u má operační složitost a) závislou na výšce levého podstromu uzlu u b) mezi O(1) a Θ(n) c) závislou na hloubce
VíceNEJKRATŠÍ CESTY I. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
NEJKRATŠÍ CESTY I Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 7 Evropský sociální fond Praha & EU: Investujeme do vaší
VíceDigitální učební materiál
Digitální učební materiál Číslo projektu: CZ.1.07/1.5.00/34.0548 Název školy: Gymnázium, Trutnov, Jiráskovo náměstí 325 Název materiálu: VY_32_INOVACE_148_IVT Autor: Ing. Pavel Bezděk Tematický okruh:
Více2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC
.6. VLASTNÍ ČÍSLA A VEKTORY MATIC V této kapitole se dozvíte: jak jsou definována vlastní (charakteristická) čísla a vektory čtvercové matice; co je to charakteristická matice a charakteristický polynom
VíceAsymptotická složitost algoritmů
Semestrální projekt 1 Y14TED Asymptotická složitost algoritmů Autor: Antonín DANĚK Osnova Slide 2 Co je to složitost algoritmu? Jak se počítá složitost algoritmu? Smysl přesného výpočtu složitosti algoritmu
VíceSeminář z IVT Algoritmizace. Slovanské gymnázium Olomouc Tomáš Kühr
Seminář z IVT Algoritmizace Slovanské gymnázium Olomouc Tomáš Kühr Algoritmizace - o čem to je? Zatím jsme se zabývali především tím, jak určitý postup zapsat v konkrétním programovacím jazyce (např. C#)
VíceObecná informatika. Matematicko-fyzikální fakulta Univerzity Karlovy v Praze. Podzim 2012
Obecná informatika Přednášející Putovních přednášek Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Podzim 2012 Přednášející Putovních přednášek (MFF UK) Obecná informatika Podzim 2012 1 / 18
VíceMatematika B101MA1, B101MA2
Matematika B101MA1, B101MA2 Zařazení předmětu: povinný předmět 1.ročníku bc studia 2 semestry Rozsah předmětu: prezenční studium 2 + 2 kombinované studium 16 + 0 / semestr Zakončení předmětu: ZS zápočet
VíceORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ
ORIENTOVANÉ GRAFY, REPREZENTACE GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2/2, Lekce Evropský sociální fond Praha & EU: Investujeme
VíceSložitost problémů. Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 25. dubna / 23
Složitost problémů Z. Sawa (VŠB-TUO) Úvod do teoretické informatiky 25. dubna 2012 1/ 23 Složitost problémů Ukazuje se, že různé(algoritmické) problémy jsou různě těžké. Obtížnější jsou ty problémy, k
VíceZáklady algoritmizace, návrh algoritmu
Základy algoritmizace, návrh algoritmu Algoritmus Předpoklady automatického výpočtu: předem stanovit (rozmyslet) přesný postup během opakovaného provádění postupu již nepřemýšlet a postupovat mechanicky
VíceMatematická analýza pro informatiky I. Limita posloupnosti (I)
Matematická analýza pro informatiky I. 3. přednáška Limita posloupnosti (I) Jan Tomeček tomecek@inf.upol.cz http://aix-slx.upol.cz/ tomecek/index Univerzita Palackého v Olomouci 25. února 2011 tomecek@inf.upol.cz
VíceVzdálenost uzlů v neorientovaném grafu
Vzdálenosti a grafy Vzdálenost uzlů v neorientovaném grafu Je dán neorientovaný neohodnocený graf G = (V,E,I) vzdálenost uzlů u a v v neorientovaném souvislém grafu G je délka nejkratší cesty spojující
VíceZdůvodněte, proč funkce n lg(n) roste alespoň stejně rychle nebo rychleji než než funkce lg(n!). Symbolem lg značíme logaritmus o základu 2.
1 3 4 5 6 7 8 9 10 11 1 13 14 15 16 17 18 19 0 1 3 4 5 6 7 8 9 30 31 3 Zdůvodněte, proč funkce f(n) = n log(n) 1 n 1/ roste rychleji než funkce g(n) = n. Zdůvodněte, proč funkce f(n) = n 3/ log(n) roste
VíceNMIN101 Programování 1 2/2 Z --- NMIN102 Programování /2 Z, Zk
NMIN101 Programování 1 2/2 Z --- NMIN102 Programování 2 --- 2/2 Z, Zk Pavel Töpfer Katedra software a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer
VíceRekurzivní algoritmy
Rekurzivní algoritmy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy (BI-EFA) ZS
VíceMichal Krátký. Úvod do programování. Cíl kurzu. Podmínky získání zápočtu III/III
Michal Krátký Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 tel.: +420 596 993 239 místnost: A1004 mail: michal.kratky@vsb.cz
VíceDoba běhu daného algoritmu/programu. 1. Který fragment programu z následujících dvou proběhne rychleji?
1 Doba běhu daného algoritmu/programu 1. Který fragment programu z následujících dvou proběhne rychleji? int n = 100; int sum = 0; for (i = 0; i < n; i++) for (j = 0; j < i; j++) sum += i+j; int n = 75;
VíceNMIN101 Programování 1 2/2 Z --- NMIN102 Programování /2 Z, Zk
NMIN101 Programování 1 2/2 Z --- NMIN102 Programování 2 --- 2/2 Z, Zk Pavel Töpfer Katedra software a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer
Více4. Rekurze. BI-EP1 Efektivní programování Martin Kačer
4. Rekurze BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v Praze
VíceZákladní informace o předmětu Otázka:
Základní informace o předmětu Otázka: Proč vůbec porovnávat algoritmy? Vlastnosti algoritmů přirozenost a stabilita algoritmu časová náročnost algoritmu asymetrická a asymptotická časová náročnost algoritmů
VíceCvičení 5. Přednášející: Mgr. Rudolf B. Blažek, Ph.D. prof. RNDr. Roman Kotecký, DrSc.
5 Přednášející: Mgr. Rudolf B. Blažek, Ph.D. prof. RNDr. Roman Kotecký, DrSc. Katedra počítačových systémů Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické v
VíceStochastické modely Informace k závěrečné zkoušce
Stochastické modely Informace k závěrečné zkoušce Jan Zouhar Katedra ekonometrie, FIS VŠE v Praze, zouharj@vse.cz 10. února 2015 Průběh zkoušky. Zkouška je ústní s přípravou na potítku. Každý si vylosuje
VíceIB111 Úvod do programování skrze Python
Vyhledávání, řazení, složitost IB111 Úvod do programování skrze Python 2012 Otrávené studny 8 studen, jedna z nich je otrávená laboratorní rozbor dokáže rozpoznat přítomnost jedu ve vodě je drahý (je časově
VíceRekurentní rovnice, strukturální indukce
Rekurentní rovnice, strukturální indukce Jiří Velebil: A7B01MCS 26. září 2011: 1/20 Příklad (Parketáž triminy z minulé přednášky) P(n) = počet parket k vyparketování místnosti rozměru n 1 P(1) = 1. 2 P(n
VíceObsah. Euler-Fermatova věta. Reziduální aritmetika. 3. a 4. přednáška z kryptografie
Obsah Počítání modulo n a jeho časová složitost 3. a 4. přednáška z kryptografie 1 Počítání modulo n - dokončení Umocňování v Zn 2 Časová složitost výpočtů modulo n Asymptotická notace Základní aritmetické
VíceFP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY. Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci
FP - SEMINÁŘ Z NUMERICKÉ MATEMATIKY Dana Černá http://www.fp.tul.cz/kmd/ Katedra matematiky a didaktiky matematiky Technická univerzita v Liberci OBSAH A CÍLE SEMINÁŘE: Opakování a procvičení vybraných
VíceALGORITMY A DATOVÉ STRUKTURY
Název tématického celku: Cíl: ALGORITMY A DATOVÉ STRUKTURY Metodický list č. 1 Časová složitost algoritmů Základním cílem tohoto tematického celku je vysvětlení potřebných pojmů a definic nutných k popisu
VíceZákladní datové struktury III: Stromy, haldy
Základní datové struktury III: Stromy, haldy prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní
VíceCOMPLEXITY
Níže uvedené úlohy představují přehled otázek, které se vyskytly v tomto nebo v minulých semestrech ve cvičení nebo v minulých semestrech u zkoušky. Mezi otázkami semestrovými a zkouškovými není žádný
VíceMatematická analýza pro informatiky I. Limita funkce
Matematická analýza pro informatiky I. 5. přednáška Limita funkce Jan Tomeček tomecek@inf.upol.cz http://aix-slx.upol.cz/ tomecek/index Univerzita Palackého v Olomouci 18. března 2011 Jan Tomeček, tomecek@inf.upol.cz
Více5. Dynamické programování
5. Dynamické programování BI-EP1 Efektivní programování 1 ZS 2011/2012 Ing. Martin Kačer, Ph.D. 2010-11 Martin Kačer Katedra teoretické informatiky Fakulta informačních technologií České vysoké učení technické
VíceDiskrétní matematika. DiM /01, zimní semestr 2017/2018
Diskrétní matematika Petr Kovář petr.kovar@vsb.cz Vysoká škola báňská Technická univerzita Ostrava DiM 470-2301/01, zimní semestr 2017/2018 O tomto souboru Tento soubor je zamýšlen především jako pomůcka
VíceZpracoval: hypspave@fel.cvut.cz 7. Matematická indukce a rekurse. Řešení rekurentních (diferenčních) rovnic s konstantními koeficienty.
Zpracoval: hypspave@fel.cvut.cz 7. Matematická indukce a rekurse. Řešení rekurentních (diferenčních) rovnic s konstantními koeficienty. (A7B01MCS) I. Matematická indukce a rekurse. Indukční principy patří
VíceNPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk
NPRG030 Programování I 3/2 Z --- NPRG031 Programování II --- 2/2 Z, Zk Pavel Töpfer Katedra softwaru a výuky informatiky MFF UK MFF Malostranské nám., 4. patro, pracovna 404 pavel.topfer@mff.cuni.cz http://ksvi.mff.cuni.cz/~topfer
VíceSložitost. Teoretická informatika Tomáš Foltýnek
Složitost Teoretická informatika Tomáš Foltýnek foltynek@pef.mendelu.cz Teoretická informatika 2 Opakování z minulé přednášky Co říká Churchova teze? Jak lze kódovat Turingův stroj? Co je to Univerzální
VíceRůzné algoritmy mají různou složitost
/ 1 Různé algoritmy mají různou složitost 1/ 1 Rychlost... Jeden algoritmus (program, postup, metoda ) je rychlejší než druhý. Co ta věta znamená?? 2/ 1 Asymptotická složitost y y x x Každému algoritmu
VíceVyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 12.
Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 12. září 2016 Jiří Dvorský (VŠB TUO) Vyhledávání 201 / 344 Osnova přednášky
VíceTřídy složitosti P a NP, NP-úplnost
Třídy složitosti P a NP, NP-úplnost Cíle přednášky: 1. Definovat, za jakých okolností můžeme problém považovat za efektivně algoritmicky řešitelný. 2. Charakterizovat určitou skupinu úloh, pro které není
VíceMatematika III přednáška Aplikace vytvořujících funkcí - další úlohy
S Matematika III - 14. přednáška Aplikace vytvořujících funkcí - další úlohy Michal Bulant Masarykova univerzita Fakulta informatiky 18. 12. 2007 Obsah přednášky Řešení rekurencí Q Exponenciální vytvořující
VíceRekurentní rovnice, strukturální indukce
, strukturální indukce Jiří Velebil: Y01DMA 23. února 2010: Strukturální indukce 1/19 Backusova-Naurova forma Například syntaxe formuĺı výrokové logiky kde a At. Poznámky 1 Relaxace BNF. ϕ ::= a tt (ϕ
Víceprof. RNDr. Čestmír Burdík DrCs. prof. Ing. Edita Pelantová CSc. BI-ZMA ZS 2009/2010
Základní pojmy prof. RNDr. Čestmír Burdík DrCs. prof. Ing. Edita Pelantová CSc. Katedra matematiky České vysoké učení technické v Praze c Čestmír Burdík, Edita Pelantová 2009 Základy matematické analýzy
VíceČasová složitost algoritmů, řazení a vyhledávání
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Časová složitost algoritmů, řazení a vyhledávání BI-PA1 Programování a algoritmizace 1 Katedra teoretické informatiky Miroslav Balík Fakulta
VíceRekurence, rekurze a sumy. Základy diskrétní matematiky, BI-ZDM
Rekurence, rekurze a sumy doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky FIT České vysoké učení technické v Praze c Josef Kolar, 2011 Základy diskrétní matematiky, BI-ZDM ZS 2011/12, Lekce
VíceSOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC
SOUSTAVY LINEÁRNÍCH ALGEBRAICKÝCH ROVNIC Pojm: Algebraická rovnice... rovnice obsahující pouze celé nezáporné mocnin neznámé, tj. a n n + a n 1 n 1 +... + a 2 2 + a 1 + a 0 = 0, kde n je přirozené číslo.
Vícestránkách přednášejícího.
Předmět: MA 4 Dnešní látka Iterační metoda Jacobiova iterační metoda Gaussova-Seidelova iterační metoda Superrelaxační metoda (metoda SOR) Metoda sdružených gradientů Četba: Text o lineární algebře v Příručce
VíceEvropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-SOC: 11 METODY VERIFIKACE SYSTÉMŮ NA ČIPU Hana Kubátov vá doc. Ing. Hana Kubátová, CSc. Katedra číslicového návrhu Fakulta 1 informačních
VíceProjekt IMPLEMENTACE ŠVP. pořadí početních operací, dělitelnost, společný dělitel a násobek, základní početní operace
Střední škola umělecká a řemeslná Evropský sociální fond "Praha a EU: Investujeme do vaší budoucnosti" Projekt IMPLEMENTACE ŠVP Evaluace a aktualizace metodiky předmětu Matematika Výrazy Obory nástavbového
VíceVztah teorie vyčíslitelnosti a teorie složitosti. IB102 Automaty, gramatiky a složitost, /31
Vztah teorie vyčíslitelnosti a teorie složitosti IB102 Automaty, gramatiky a složitost, 2. 12. 2013 1/31 IB102 Automaty, gramatiky a složitost, 2. 12. 2013 2/31 Časová složitost algoritmu počet kroků výpočtu
Více1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10
Úlohy- 2.cvičení 1. Převeďte dané číslo do dvojkové, osmičkové a šestnáctkové soustavy: a) 759 10 b) 2578 10 2. Převeďte dané desetinné číslo do dvojkové soustavy (DEC -> BIN): a) 0,8125 10 b) 0,35 10
VíceLineární algebra : Násobení matic a inverzní matice
Lineární algebra : Násobení matic a inverzní matice (8. přednáška) František Štampach, Karel Klouda LS 2013/2014 vytvořeno: 17. března 2014, 12:42 1 2 0.1 Násobení matic Definice 1. Buďte m, n, p N, A
VíceMatematika IV 9. týden Vytvořující funkce
Matematika IV 9. týden Vytvořující funkce Jan Slovák Masarykova univerzita Fakulta informatiky jaro 2015 Obsah přednášky 1 Vytvořující funkce a Fibonacciho čísla 2 Vytvořující funkce - připomenutí 3 Řešení
VícePrincipy indukce a rekursivní algoritmy
Principy indukce a rekursivní algoritmy Jiří Velebil: A7B01MCS 19. září 2011: Indukce 1/20 Příklad Místností rozměru n budeme rozumět šachovnici rozměru 2 n 2 n, ze které je jedno (libovolné) pole vyjmuto.
Více3 Množiny, Relace a Funkce
3 Množiny, Relace a Funkce V přehledu matematických formalismů informatiky se v této lekci zaměříme na základní datové typy matematiky, tj. na množiny, relace a funkce. O množinách jste sice zajisté slyšeli
Více0.1 Úvod do matematické analýzy
Matematika I (KMI/PMATE) 1 0.1 Úvod do matematické analýzy 0.1.1 Limita a spojitost funkce Lineární funkce Lineární funkce je jedna z nejjednodušších a možná i nejpoužívanějších funkcí. f(x) = kx + q D(f)
VíceArchitektura počítačů Logické obvody
Architektura počítačů Logické obvody http://d3s.mff.cuni.cz/teaching/computer_architecture/ Lubomír Bulej bulej@d3s.mff.cuni.cz CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics 2/36 Digitální
VícePROHLEDÁVÁNÍ GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze
PROHLEDÁVÁNÍ GRAFŮ Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2010/2011, Lekce 4 Evropský sociální fond Praha & EU: Investujeme do
VíceAlgoritmus pro hledání nejkratší cesty orientovaným grafem
1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval
VícePravděpodobnostní algoritmy
Pravděpodobnostní algoritmy 17. a 18. přednáška z kryptografie Alena Gollová 1/31 Obsah 1 Diskrétní rozdělení náhodné veličiny Algoritmus Generate and Test 2 Alena Gollová 2/31 Diskrétní rozdělení náhodné
VíceVzpěr jednoduchého rámu, diferenciální operátory. Lenka Dohnalová
1 / 40 Vzpěr jednoduchého rámu, diferenciální operátory Lenka Dohnalová ČVUT, fakulta stavební, ZS 2015/2016 katedra stavební mechaniky a katedra matematiky, Odborné vedení: doc. Ing. Jan Zeman, Ph.D.,
VíceBinární vyhledávací stromy pokročilé partie
Binární vyhledávací stromy pokročilé partie KMI/ALS lekce Jan Konečný 30.9.204 Literatura Cormen Thomas H., Introduction to Algorithms, 2nd edition MIT Press, 200. ISBN 0-262-5396-8 6, 3, A Knuth Donald
VíceMartin Hejtmánek hejtmmar@fjfi.cvut.cz http://kmlinux.fjfi.cvut.cz/ hejtmmar
Základy programování Martin Hejtmánek hejtmmar@fjfi.cvut.cz http://kmlinux.fjfi.cvut.cz/ hejtmmar Počítačový kurs Univerzity třetího věku na FJFI ČVUT Pokročilý 21. května 2009 Dnešní přednáška 1 Počátky
VíceLineární algebra : Skalární součin a ortogonalita
Lineární algebra : Skalární součin a ortogonalita (15. přednáška) František Štampach, Karel Klouda frantisek.stampach@fit.cvut.cz, karel.klouda@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních
Více3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem
ČVUT FEL X36PAA - Problémy a algoritmy 3. úloha - problém batohu metodami branch & bound, dynamické programování, heuristika s testem Jméno: Marek Handl Datum: 1. 1. 2009 Cvičení: Pondělí 9:00 Zadání Naprogramujte
VíceZáklady matematické analýzy
Základy matematické analýzy Spojitost funkce Ing. Tomáš Kalvoda, Ph.D. 1, Ing. Daniel Vašata 2 1 tomas.kalvoda@fit.cvut.cz 2 daniel.vasata@fit.cvut.cz Katedra aplikované matematiky Fakulta informačních
VíceElegantní algoritmus pro konstrukci sufixových polí
Elegantní algoritmus pro konstrukci sufixových polí 22.10.2014 Zadání Obsah Zadání... 3 Definice... 3 Analýza problému... 4 Jednotlivé algoritmy... 4 Algoritmus SA1... 4 Algoritmus SA2... 5 Algoritmus
VíceLingebraické kapitolky - Počítání s maticemi
Lingebraické kapitolky - Počítání s maticemi Jaroslav Horáček KAM MFF UK 20 Rozehřívačka: Definice sčítání dvou matic a násobení matice skalárem, transpozice Řešení: (A + B ij A ij + B ij (αa ij α(a ij
Více