Page 39 - MATINF Nr. 1
        P. 39
     ˘
            ARTICOLE SI NOTE DE INFORMATICA
                                  ,
            Optimalitatea algoritmului de c˘autare binar˘a
            Costel B˘alc˘au   1
                ˆ
                In acest articol vom demonstra c˘a algoritmul de c˘autare binar˘a este optim. Pentru aceasta
            vom prezenta s , i utiliza cˆateva not , iuni s , i rezultate de baz˘a din teoria algoritmilor: ordine de
            complexitate, Teorema Master, propriet˘at , i ale arborilor binari strict , i.
            Ordine de complexitate
            Timpul de execut , ie al unui algoritm depinde, ˆın general, de setul datelor de intrare, iar pentru
            fiecare astfel de set el este bine determinat de num˘arul de operat , ii executate s , i de tipul acestora.
            Astfel timpul de execut , ie al unui algoritm poate fi interpretat s , i analizat drept o funct , ie pozitiv˘a
            ce are ca argument dimensiunea datelor de intrare.
            Definit , ia 1. Pentru orice algoritm A, not˘am cu T A (n) timpul de execut , ie pentru algoritmul
            A corespunz˘ator unui set de date de intrare avˆand dimensiunea total˘a n.
            Definit , ia 2. Un algoritm A este considerat optim dac˘a (se demonstreaz˘a c˘a) nu exist˘a un
            algoritm avˆand un timp de execut ,ie mai bun pentru rezolvarea problemei date, adic˘a pentru orice
                       0
            algoritm A care rezolv˘a problema dat˘a avem T A (n) ≤ T A 0(n), pentru orice n.
                Obt , inerea de algoritmi pur optimi - ˆın sensul definit , iei anterioare - este posibil˘a ˆın put , ine
            situat , ii, iar demonstrarea optimalit˘at , ii acestora este de obicei dificil˘a. Mult mai des se ˆıntˆalnesc
            algoritmi cu o comportare apropiat˘a de cea optim˘a, pentru valori suficient de mari ale dimensiunii
            setului datelor de intrare. Prezent˘am ˆın continuare cˆateva not , iuni prin care se cuantific˘a aceast˘a
            apropiere.
            Definit , ia 3. Fie f, g : N \ A → R + dou˘a funct ,ii, unde A este o mult ,ime finit˘a, A ⊂ N.
                                                                                                   f(n)
                a) f s , i g se numesc asimptotic echivalente s , i not˘am f(n) ∼ g(n) dac˘a ∃ lim      = 1.
                                                                                              n→∞  g(n)
                b) Spunem c˘a f este asimptotic m˘arginit˘a superior de g, iar g este asimptotic
            m˘arginit˘a inferior de f s , i not˘am f(n) = O (g(n)) s , i g(n) = Ω(f(n)) dac˘a ∃ c > 0, ∃ n 0 ∈ N
            astfel ˆıncˆat f(n) ≤ c · g(n), ∀ n ≥ n 0 .
                c) Spunem c˘a f s , i g au acelas , i ordin de cres , tere s , i not˘am f(n) = Θ(g(n)) dac˘a
            f(n) = O (g(n)) s , i f(n) = Ω(g(n)).
                Urm˘atorul rezultat este o consecint , ˘a imediat˘a a definit , iei anterioare.
               1
                Conf. univ. dr., Universitatea din Pites , ti, cbalcau@yahoo.com
                                                           39
     	
