FORMULA DEL PROMEDIO DEL TIEMPO DE EJECUCION PARA EL INSERTION SORT CUANDO POSEE PERMUTACIONES UNIFORMES AL AZAR CON REPETICION

 

Se tiene que el orden del algoritmo de Insertion-Sort  en el caso promedio  es de Q(n2), entonces podemos aplicar algún método de aproximación Polinomial ó regresión numérica teniendo en cuenta los datos que nos arroja el  correspondiente Applet (para permutaciones con repetición) , y así  poder hallar la ecuación del tiempo promedio de este algoritmo. Ya que el algoritmo es  Q (n2), utilizo aproximación polinomial a la ecuación de la parábola de mínimos cuadrados:  x+bx+c,  en donde para hallar los valores de a,b y c,  debo solucionar el siguiente sistema de ecuaciones :

 

 ()  A +  () B +  () C     =   

 

    () A +   () B + () C  =

 

    () A      + () B +        n *C            =

 

X: Vector con la lista de las abscisas.

Y: Vector con la lista de ordenadas.

n: número de muestras.

 

Se tienen los siguientes datos (del Applet):

 

tp (1) = 1

tp(2) = 6.75

tp (3) = 14

tp (4) = 22.75

tp (5) = 33

tp(6) = 44.75

tp (7) = 58

tp(8) = 72.75

 

x = [1  2  3  4  5  6  7  8 ];

y = [1  6.75  14  22.75  33  44.75  58  72.75 ]  ;

n=8

 

Procedemos a construir  el sistema de ecuaciones desarrollando las sumatorias:

 

= 8772                                                   =  10452

 

= 1296                                             =  1569

 

 =  204                                             =  253

 

=  36

 

el sistema de ecuaciones queda de la siguiente forma:

 

(8772) A + (1296) B + (204) C  =  10452

(1296) A  + (204) B   + (36) C    =  1569   

(204) A     +  (36) B    +  (8) C   =   253

 

 Aplicando algún método para la solución de sistemas de ecuaciones o con la ayuda de algún programa matemático como Matlab (como lo es en este caso), se puede llegar a una rápida solución:

 

mat_inversa = inv ( [   8772,        1296,         204;    

                                      1296,         204,          36;

                                     204,          36,          8;     ])

 

   mat_inversa * [10452;    1569;   253]

 

Que arroja el siguiente resultado como solución del sistema:

 

   A = 0.7500 = 3/4

   B = 3.5000 = 7/2

   C = -3.2500 = -13/4

 

 

La ecuación final ó fórmula para el promedio de pasos en el algoritmo de Insertion-Sort con repetición  es:

 

                                   tp(x)  = (3/4) X + (7/2) X - (13/4)

 

 

Hosted by www.Geocities.ws

1