Documente Academic
Documente Profesional
Documente Cultură
Dorel Lucanu
Faculty of Computer Science
Alexandru Ioan Cuza University, Iasi, Romania
dlucanu@info.uaic.ro
PA 2014/2015
Complexitatea algoritmilor
PA 2014/2015
1 / 36
Anunt
Complexitatea algoritmilor
PA 2014/2015
2 / 36
Outline
Complexitatea algoritmilor
PA 2014/2015
3 / 36
Problem
a rezolvat
a de un algoritm
Plan
Complexitatea algoritmilor
PA 2014/2015
4 / 36
Problem
a rezolvat
a de un algoritm
Problema
Complexitatea algoritmilor
PA 2014/2015
5 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
6 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
7 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
8 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
9 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
10 / 36
Problem
a rezolvat
a de un algoritm
Algoritmul PlatouAlg
Complexitatea algoritmilor
PA 2014/2015
11 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
12 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
13 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
14 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
15 / 36
Problem
a rezolvat
a de un algoritm
Problema rezolvabila
Complexitatea algoritmilor
PA 2014/2015
16 / 36
Problem
a rezolvat
a de un algoritm
Problema de decizie
Complexitatea algoritmilor
PA 2014/2015
17 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
18 / 36
Problem
a rezolvat
a de un algoritm
Program universal
Complexitatea algoritmilor
PA 2014/2015
19 / 36
Problem
a rezolvat
a de un algoritm
Problema opririi:
Instance: O configuratie hA, 0 i, unde A este un algoritm.
Question: Executia care pleaca din configuratia initiala hA, 0 i este finita?
Teorema
Nu exista un algoritm care sa rezolve Problema opririi.
Complexitatea algoritmilor
PA 2014/2015
20 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
21 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
22 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
23 / 36
Problem
a rezolvat
a de un algoritm
Complexitatea algoritmilor
PA 2014/2015
24 / 36
Plan
Complexitatea algoritmilor
PA 2014/2015
25 / 36
Complexitatea algoritmilor
PA 2014/2015
26 / 36
Complexitatea algoritmilor
PA 2014/2015
27 / 36
Plan
Complexitatea algoritmilor
PA 2014/2015
28 / 36
Complexitatea algoritmilor
PA 2014/2015
29 / 36
Complexitatea algoritmilor
PA 2014/2015
30 / 36
Complexitatea algoritmilor
PA 2014/2015
31 / 36
Complexitatea spatiu
Complexitatea algoritmilor
PA 2014/2015
32 / 36
Exemplul 1
input:
output:
n, (a0 , .(
. . , an1 ), z numere ntregi.
min{i | ai = z} dac
a {i | ai = z} =
6 ,
poz =
1
altfel.
i = 0;
while (a[i] != z) and (i < n-1)
i = i+1;
if (a[i] == z) poz = i;
else poz = -1;
Discutia pe tabla.
Complexitatea algoritmilor
PA 2014/2015
33 / 36
Exemplul 2
input:
output:
max = a[0];
for (i = 1; i < n; i++)
if (a[i] > max)
max = a[i];
Discutia pe tabla.
Complexitatea algoritmilor
PA 2014/2015
34 / 36
Exemplul 3
input:
output:
Complexitatea algoritmilor
PA 2014/2015
35 / 36
Exemplul 4
input:
output:
istg = 0;
idr = n - 1;
while (istg <= idr ) {
imed = (istg + idr) / 2;
if (a[imed] == z)
return imed
else if (a[imed] > z)
idr = imed-1;
else
istg = imed + 1;
}
return -1
Discutia pe tabla.
D. Lucanu (FII - UAIC)
Complexitatea algoritmilor
PA 2014/2015
36 / 36