Estructuras de Datos y Algoritmos



Documentos relacionados
Lección 24: Lenguaje algebraico y sustituciones

Teóricas de Análisis Matemático (28) - Práctica 4 - Límite de funciones. 1. Límites en el infinito - Asíntotas horizontales

Ecuaciones de primer grado con dos incógnitas

Lección 9: Polinomios

Tema 1: Fundamentos de lógica, teoría de conjuntos y estructuras algebraicas: Apéndice

Operaciones con polinomios

Programa para el Mejoramiento de la Enseñanza de la Matemática en ANEP Proyecto: Análisis, Reflexión y Producción. Fracciones

La ventana de Microsoft Excel

SESION El comando Integrate 2. Aproximación de integrales definidas 3. Integración de funciones racionales

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

Índice Introducción Números Polinomios Funciones y su Representación. Curso 0: Matemáticas y sus Aplicaciones Tema 1. Números, Polinomios y Funciones

UNIDAD 6. POLINOMIOS CON COEFICIENTES ENTEROS

Centro de Capacitación en Informática

Profr. Efraín Soto Apolinar. Factorización

Estructuras de Datos y Algoritmos. Árboles de Expresión

Eduardo Kido 26-Mayo-2004 ANÁLISIS DE DATOS

Divisibilidad y números primos

DISEÑO DEL SOFTWARE TRAFFIC ANALYZER. Analyzer. En este capítulo se reporta el desarrollo que se llevó a cabo para realizar el software

Contabilidad Orientada a los Negocios

Aproximación local. Plano tangente. Derivadas parciales.

Aplicaciones Lineales

GUÍA DE EJERCICIOS UNIDAD II

E 1 E 2 E 2 E 3 E 4 E 5 2E 4

Interpolación polinómica

Descomposición factorial de polinomios

Tema 07. LÍMITES Y CONTINUIDAD DE FUNCIONES

T.1 CONVERGENCIA Y TEOREMAS LÍMITE

Lección 14: Problemas que se resuelven por sistemas de ecuaciones lineales

JOSÉ PERAZA, FÍSICA 2 JOSÉ PERAZA, FÍSICA 2 JOSÉ PERAZA, FÍSICA 2 Energía Potencial eléctrica

UNIDAD I NÚMEROS REALES

AUTOR CARLOS EDUARDO BUENO VERGARA JORGE ARMANDO BUENO VERGARA USO DE LOS OBJETOS DEL PROGRAMA. Dfd INFORMÁTICA II PROFESOR. JOSÉ FRANCISCO AMADOR

MATEMÁTICAS para estudiantes de primer curso de facultades y escuelas técnicas

CASO PRÁCTICO DISTRIBUCIÓN DE COSTES

TEMA V TEORÍA DE CUADRIPOLOS LINEALES Introducción Parámetros de Impedancia a circuito abierto.

SUMA Y RESTA DE FRACCIONES

AXIOMAS DE CUERPO (CAMPO) DE LOS NÚMEROS REALES

Hoja1!C4. Hoja1!$C$4. Fila

PRÁCTICAS DE GESTIÓN GANADERA:

ÁLGEBRA DE MATRICES. Al consejero A no le gusta ninguno de sus colegas como presidente.

Información importante. 1. El potencial eléctrico. Preuniversitario Solidario Superficies equipotenciales.

Ahora comencemos!... Las operaciones matemáticas fundamentales pueden realizarse de forma rápida y sencilla con Miicrosofftt Excell.

1. HABILIDAD MATEMÁTICA

DESIGUALDADES página 1

Fundamentos de Investigación de Operaciones Investigación de Operaciones 1

VECTORES. Módulo, dirección y sentido de un vector fijo En un vector fijo se llama módulo del mismo a la longitud del segmento que lo define.

Lección 4: Suma y resta de números racionales

Tema 5. Variables aleatorias discretas

La suma se realiza miembro a miembro. La suma de polinomios goza de las mismas propiedades que la suma de números. Ejemplo:

PROPORCIONALIDAD - teoría

Capitulo V Administración de memoria

Matrices Invertibles y Elementos de Álgebra Matricial

TRABAJO Y ENERGÍA; FUERZAS CONSERVATIVAS Y NO CONSERVATIVAS

GUÍA PARA LA FORMULACIÓN PROYECTOS

Un Apunte de Funciones "Introducción al Cálculo Dif. e Int."

IV. DEFINICIÓN DE OBJETIVOS

Profr. Efraín Soto Apolinar. Números reales

La suma y la resta. Introducción. Capítulo

Soluciones a los problemas Olimpiada de Matemáticas Fase local Extremadura Enero de 2015

MATEMÁTICAS APLICADAS A LAS C.C. SOCIALES

Los números racionales

LABORATORIO Nº 2 GUÍA PARA REALIZAR FORMULAS EN EXCEL

Clase de apoyo de matemáticas Ángulos Escuela 765 Lago Puelo Provincia de Chubut

Selectividad Septiembre 2009 SEPTIEMBRE Opción A

ECUACIÓN QUE OBTIENE CON BUENA APROXIMACIÓN LA SUMA DE LOS PRIMEROS ENTEROS A CUALQUIER POTENCIA ENTERA POSITIVA

35 Facultad de Ciencias Universidad de Los Andes Mérida-Venezuela. Potencial Eléctrico

Tarea 7 Soluciones. Sol. Sea x el porcentaje que no conocemos, entonces tenemos la siguiente. (3500)x = 420. x = = 3 25

TEMA 4 FRACCIONES MATEMÁTICAS 1º ESO

MICROECONOMÍA II PRÁCTICA TEMA III: MONOPOLIO

Conclusiones. Particionado Consciente de los Datos

Funciones en Excel (II)

Centro de Capacitación en Informática

MATEMÁTICAS BÁSICAS UNIVERSIDAD NACIONAL DE COLOMBIA - SEDE MEDELLÍN CLASES # 13 y #14

Temas de electricidad II

Límites y Continuidad de funciones

NÚMEROS NATURALES Y NÚMEROS ENTEROS

NÚMEROS REALES MÓDULO I

Aplicaciones lineales continuas

Clases de apoyo de matemáticas Fracciones y decimales Escuela 765 Lago Puelo Provincia de Chubut

5.1. Organizar los roles

3º Grado Educación Infantil Bilingüe Números. Método Singapur y F. Bravo E R

Cálculo Simbólico también es posible con GeoGebra

Definición Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

CAPÍTULO 10 Aplicaciones de la Derivada a Funciones Económicas

ENERGÍA DE DEFORMACIÓN DE UNA ESTRUCTURA

Líneas de espera. Introducción.

MODELOS DE RECUPERACION

LÍMITES Y CONTINUIDAD DE FUNCIONES

PRÁCTICA N 2 SISTEMAS DE NUMERACIÓN

Herramienta Solver. Activar Excel Solver

Aplicaciones lineales

UNIDAD 1. LOS NÚMEROS ENTEROS.

Árboles AVL. Laboratorio de Programación II

Ambas componentes del sistema tienen costos asociados que deben de considerarse.

PROGRAMACIÓN LINEAL Introducción Inecuaciones lineales con 2 variables

El desarrollo del pensamiento multiplicativo.

El rincón de los problemas. Oportunidades para estimular el pensamiento matemático. Triángulos de área máxima o de área mínima Problema

x

Problemas fáciles y problemas difíciles. Cuando a los niños les planteamos problemas de suma y resta, Laura dejó sin resolver el siguiente problema:

Transcripción:

Estructuras de Datos y Algoritmos Año 205 Deducción de algunos esfuerzos para una Distribución pseudo-aleatoria de datos Introducción Vamos a desarrollar algunos de los esfuerzos para estructuras que utilizan una distribución pseudoaleatoria de datos y mostraremos en detalle cada paso de la deducción. Para cada uno de los esfuerzos planteados, primero haremos la deducción a posteriori, para luego usarlo en la deducción del esfuerzo a priori; ello porque es más sencillo realizar la deducción de los esfuerzos a priori, una vez que se conocen los esfuerzos a posteriori. En todos los casos, por simplicidad, consideramos el caso de tener sólo una ranura por balde; o sea, r y consideramos estructuras sin bajas. A estas estructuras en general tiene más sentido evaluarlas por Esperanza (esfuerzo medio) que por áximo, ya que éste puede ser muy malo (O(), en el caso que todos los elementos caigan en una única lista), pero aquí analizaremos ambos. Esfuerzos en Rebalse Separado La función de costo utilizada es cantidad de celdas consultadas o baldes consultados. a) A posteriori Sean n,n 2,...,n los largos de la Lista, Lista 2 y Lista respectivamente. En este caso lo único que se considera librado al azar es sobre qué elemento se realiza la consulta.. Esfuerzo máximo de búsqueda exitosa El esfuerzo máximo de localización exitosa se obtendría al consultar el último elemento de la lista más larga; o sea: máx(n,n 2,...,n ) baldes consultados 2. Esfuerzo máximo de búsqueda no exitosa El esfuerzo máximo de localización no exitosa se obtendría al consultar en la lista más larga. Como las listas son desordenadas para fracasar en ella se debe llegar hasta el final de la lista; entonces sería: máx(n,n 2,...,n ) baldes consultados 3. Esfuerzo medio de búsqueda no exitosa Asumimos, como hipótesis, que existe igual probabilidad de caer en cualquiera de las listas al consultar por un elemento que no se encuentra en la estructura; o sea que trabajamos bajo hipótesis de isoprobabilidad de que la función h devuelva cualquiera de los valores posibles. La probabilidad de que el elemento corresponda a una determinada lista, si la función distribuye uni- Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos Universidad acional de San Luis - 205

formemente, es. Al buscar en cada lista por un elemento no presente, se llega hasta el final de la lista habiendo consultado todos los baldes. Por ejemplo, si es la Lista i entonces se consultan n i baldes.porlo tanto, el esfuerzo medio de búsqueda no exitosa a posteriori vendría dado por la siguiente fórmula: i siendo ρ el factor de carga de dicha estructura. n i n i ρ En la primera igualdad sólo sacamos como factor común a, porque no está afectado por la sumatoria. En la segunda igualdad vemos que sumar, sobre todas las listas, la cantidad de elementos presentes da la cantidad de nuplas instaladas, o sea. En la tercera sólo reemplazamos por su definición. Entonces, independientemente de los largos particulares de cada lista, el esfuerzo medio de búsqueda no exitosa sólo depende de la cantidad de listas y de la cantidad de nuplas a alojar. 4. Esfuerzo medio de búsqueda exitosa Asumiendo que existe igual probabilidad de que cada una de las nuplas sea consultada; es decir trabajando bajo isoprobabilidad de consulta, la probabilidad de consultar un elemento sería. i El vector de costo que se plantearía en este caso sería: (,...,n,,...,n 2,...,,...,n ) } {{ } costos Porlotanto, la fórmula del esfuerzo podría plantearse como: completo sobre el vector de costo. Si analizamos una lista particular, por ejemplo la lista j, se podría plantear que: n j k i k n j (n j +) n j (n j +) 2 2 c i,lacualdalaideadeunrecorrido Si ahora consideramos el resultado de esta sumatoria, podemos observar que el primer término corresponde a la probabilidad de que una búsqueda exitosa caiga en la lista j, mientras que el segundo término correspondería al esfuerzo medio de evocación exitosa en una lista vinculada desordenada de n j elementos. Esta fórmula está agrupando aquellos productos (costo probabilidad) que corresponden a la lista j, en este caso, en sumatorias más pequeñas y más sencillas de resolver. Entonces, si ahora queremos rearmar la sumatoria más grande debemos volver a sumar pero ahora sobre todas las posibles listas, obteniendo así el esfuerzo medio de búsqueda exitosa: En caso de que el final de la lista se indique manteniendo una celda al final, con un valor discernible que lo indique, la cantidad de baldes consultados se aumentará en una unidad; o sea n i +. Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 2 Universidad acional de San Luis - 205

n j j k k j 2 2 n j (n j +) 2 n j (n j +) (n 2 j + n j ) 2 j j n 2 j + n j j n j 2 2 j j n j 2 2 j + 2 2 n 2 j + 2 j + 2 En la primera igualdad hemos reemplazado la sumatoria más interna por su resultado. En la segunda igualdad hemos sacado factor común (dado que no varía dentro de la sumatoria). En la tercera distribuimos el producto que se realiza dentro de la sumatoria. Luego, en la cuarta igualdad, distribuimos la sumatoria respecto de la suma. Entonces, en la quinta igualdad, utilizamos que n j. Porúltimo, en la sexta igualdad simplificamos los s. ientras más parejas sean las longitudes de las listas menor será el esfuerzo medio, porque las longitudes están involucradas en una progresión cuadrática. b) A priori Para plantear los esfuerzos a priori debemos tener en cuenta todos las formas posibles en que se puede armar un rebalse separado con listas y nuplas, y consideramos la estructura sin bajas. En el caso de los esfuerzos máximos se deberá pensar en el peor caso, sobre todos los posibles, y en caso de esfuerzos medios podría verse como una esperanza de los esfuerzos medios a posteriori para cada una de las estructuras posibles; o sea: Prob(n,n 2,...,n ) Esf. edio(n,n 2,...,n ) (n,n 2,...n ) tales que j n j. Esfuerzo máximo de búsqueda exitosa El esfuerzo máximo de consulta exitosa lo obtendría al consultar por el último elemento de la lista más larga posible; y la lista más larga posible, al tener nuplas a alojar, ocurre si todas las nuplas caen en la misma lista. Entonces, dicho esfuerzo máximo será de baldes consultados 2. «2 Dicho máximo ocurrirá con una probabilidad, si la función h distribuye uniformemente. j Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 3 Universidad acional de San Luis - 205

2. Esfuerzo máximo de búsqueda no exitosa El esfuerzo máximo de consulta no exitosa lo obtendría al consultar por un elemento no presente, pero cuyo valor de función es el de la lista más larga; y la lista más larga posible, al tener nuplas a alojar, ocurre si todas las nuplas caen en la misma lista. Entonces, dicho esfuerzo máximo será también de baldes consultados. 3. Esfuerzo medio de búsqueda no exitosa Para obtener esfuerzo medio a priori, debemos calcular la esperanza de los esfuerzos medios a posteriori. O sea, para cada distribución posible de los elementos debemos obtener su esfuerzo medio a posteriori, el cual ya hemos calculado previamente. La probabilidad de que ocurra una distribución particular n,n 2,..., n viene dada por una distribución multinomial y el esfuerzo medio de evocación no exitosa para esa distribución es ρ baldes consultados; por lo tanto tendríamos la siguiente fórmula: Prob(n,n 2,...,n ) Esf. edio(n,n 2,...,n ) (n,n 2,...n ) tales que j n j Prob(n,n 2,...,n ) ρ (n,n 2,...n ) tales que j n j ρ Prob(n,n 2,...,n )ρ (n,n 2,...n ) tales que j n j En la primera igualdad sólo sustituimos el esfuerzo medio de búsqueda no exitosa (fracaso) por su valor, en la segunda igualdad sacamos factor común ρ porque su valor no varía en la sumatoria y en la siguiente igualdad aplicamos, algo ya sabido de probabilidades, que la suma de las probabilidades sobre todo el espacio de probabilidad es igual a. Vemos que el resultado es nuevamente el factor de carga. De alguna manera esto lo habíamos adelantado cuando obtuvimos el esfuerzo medio de fracaso a posteriori, porque éste no dependía de la distribución de elementos que se tenía realmente, sino sólo de yde. 4. Esfuerzo medio de búsqueda exitosa Para plantear dicho esfuerzo se pueden seguir, algebraicamente, dos caminos alternativos que nos permiten ambos deducirlo. El primero que veremos es el más simple, pero el planteo es indirecto relacionando esfuerzos medios de éxito con esfuerzos medios de fracaso, y el segundo es matemáticamente más complejo pero es el planteo directo. o. Para este primer planteo debemos recordar la relación existente entre esfuerzos medios de éxito y fracaso en aquellas estructuras que no reestructuran. Es decir, aquellas estructuras en las cuáles cuando se ubica un elemento éste nunca cambia de posición, como producto de las futuras altas. Este comportamiento Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 4 Universidad acional de San Luis - 205

está presente por ejemplo en listas desordenadas, árboles binarios ordenados y las distintas técnicas de manejo de rebalse en distribuciones pseudo-aleatorias de datos; y no lo está en listas ordenadas o árboles binarios balanceados, en las cuales para dar de alta se puede tener que reestructurar. Cuando no hay reestructuración se puede ver que para encontrar un elemento se debe recorrer el mismo camino que se realizó cuando se lo dio de alta, y el costo del alta a su vez es aquél que realizó labúsqueda que fracasó más posiblemente una constante (cuya presencia depende de la estructura particular que se esté utilizando). Por lo tanto, el esfuerzo medio de alta 3 se puede ver como: Esf. edio de Fracaso( ) o Esf. de Alta() Esf. edio de Fracaso( ) + En el caso particular de lista vinculada desordenada, por simplicidad, suponemos que las altas se realizan al final 4, y que el fin de lista se indica teniendo un puntero al siguiente en nil en la última celda de la lista; la relación existente sería que: el costo de buscar exitosamente un elemento es igual al costo de haber fracasado, antes de incorporarlo 5, más uno (porque se detiene la búsqueda que fracasa en la celda que pasará a ser la anterior a aquella en la que se ubique el elemento). Entonces, si por ejemplo consideramos el i- ésimo elemento incorporado, tendríamos que el esfuerzo medio de buscar exitosamente el i-ésimo elemento a priori se relaciona con el esfuerzo medio de fracasar a priori en una estructura con i elementos presentes. Ahora podemos plantear formalmente esta relación entre esfuerzos medios: Esf. edio de Éxito() i (Esf. medio de Alta(i)+) (Esf. medio de Fracaso(i)+) i0 Ya conocemos el esfuerzo medio de búsqueda que fracasa en un rebalse separado es ρ o y entonces reemplazando tendríamos: Esf. edio de Éxito() ( ) i + + i i0 i0 ( ) ( ) + + + 2 2 2 2 ρ 2 + 2 }{{} término correctivo Esta deducción es a priori, porque en ningún momento decimos nada sobre una distribución particular de elementos; más aún, todo el razonamiento utilizado vale aunque los n i obedezcan a reglas caprichosas. 3 Se calcula el esfuerzo medio de inserción del elemento +, teniendo ya almacenados elementos. 4 En caso de realizar las altas al inicio también es válido, aunque no es tan simple de observar. 5 Entonces, estamos en una situación en que la estructura poseía un elemento menos (el que estamos por incorporar) respecto de la estructura luego que se hizo el alta. Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 5 Universidad acional de San Luis - 205

2 o. Para el segundo planteo del esfuerzo desarrollamos el esfuerzo medio a priori de acuerdo a su definición, o sea: Prob(n,n 2,...,n ) Esf. edio(n,n 2,...,n ) (n,n 2,...n ) tales que i n i Para ello debemos recordar que la probabilidad de que ocurra una determinada secuencia de largos de listas (n,n 2,...,n ), tales que n i, responde a una distribución multinomial: i Prob(n,n 2,...,n ) p n pn 2 2...pn n n 2... n n! n 2!...n! pn pn 2 2...pn Para el caso de 2es equivalente a una distribución binomial: Prob(n ) n!( n )! pn ( p ) n Si queremos ver qué es lo que ocurre en un balde en particular: o cae dentro del balde considerado o cae fuera como vemos o el elemento cae en el balde considerado o cae fuera de él; en este último caso realmente no nos interesa en qué balde cayó. Por lo tanto, la distribución de probabilidad se transforma en binomial. Partiendo desde la probabilidad multinomial tenemos que llegar a lo mismo: p n pn 2 2...pn n constante para n n 2... n todas las combinaciones de (n,n 2,...n ) n!( n )! pn ( p ) n ( n )! n 2!n 3!...n! pn 2 2...pn todas las formas de repartir ( n ) entre n 2,...n Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 6 Universidad acional de San Luis - 205

pero podemos ver que: ( n )! n 2! n 3!...n! pn 2 2...pn (p 2 +...+ p ) n ( p ) n todas las formas de repartir ( n ) entre n 2,...n porque, aplicando sucesivamente que: (a + b) q ( q r0 q r ) a r b q r () se obtiene la igualdad planteada anteriormente. Para ver cómo se obtendría, podemos mostrar uno de dichos pasos: n (p 2 +(p 3 +...+ p )) n n p r 2 (p 3 +...+ p ) ( n ) r r r0 Por lo tanto, reemplazando obtenemos que: ( ) p n n n 2... n pn 2 2...pn n constante para todas las combinaciones de (n,n 2,...n ) n!( n )! pn ( p ) n ( n ) p n ( p ) n Ahora podemos volver al planteo original para el esfuerzo medio de evocación exitosa a priori: Prob(n,n 2,...,n ) Esf. medio(n,n 2,...,n ) (n,n 2,...n ) tales que i n i y como ya hemos calculado el esfuerzo medio de evocación a posteriori reemplazamos para obtener: Prob(n,n 2,...,n ) n 2 j + 2 2 j (n,n 2,...n ) tales que i n i ahora, aplicando propiedad distributiva del producto respecto de la suma, veamos esta fórmula por términos: Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 7 Universidad acional de San Luis - 205

er término) Prob(n,n 2,...,n ) (n,n 2,...n ) tales que i n i 2 2 (n,n 2,...n ) tales que i n i Prob(n,n 2,...,n ) 2 porque la suma de probabilidades sobre todo el espacio de probabilidades es. 2do término) Prob(n,n 2,...,n ) 2 (n,n 2,...n ) tales que i n i todos los casos posibles con n j n j 2 2 2 Prob(n,n 2,...,n ) n j todos los casos posibles con n j La última igualdad representa a sumas encadenadas, pero no es necesario escribirlas explícitamente. Estudiemos ahora el primer término de la sumatoria; es decir, cuando j : Prob(n,n 2,...,n ) n 2 p n n ( p ) n 2 n j todos los casos posibles con n Ahora veamos como podemos resolver la sumatoria, viendo en general como se comporta para un j : Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 8 Universidad acional de San Luis - 205

2 Prob(n,n 2,...,n ) n todos los casos posibles con n todos los casos posibles con n n 0 n! n 2!...n! pn pn 2 2...pn n 2 (n 2,...n ) tales que i2 n i n n!( n )! pn n 2 ( n )! n 2!...n! pn 2 2...pn n 0 n!( n )! pn n 2 ( n )! n 2!...n! pn 2 2...pn (n 2,...n ) tales que i2 n i n n 0 n 0 n n p n!( n )! pn n 2 (p 2 +...+ p ) n n!( n )! pn n 2 ( p ) n n!( n )! pn n 2 ( p ) n n!( n )! pn n n ( p ) n n p n p n n!( n )! pn n n ( p ) n n (n )!( n )! pn n n ( p ) n (n )!( n )! pn n ( p ) n Hacemos un cambio de variables, haciendo n i (o lo que es lo mismo n i +), y por lo tanto, obtenemos: Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 9 Universidad acional de San Luis - 205

p n (n )!( n )! pn n ( p ) n p i0 p p distribuyendo los productos respecto de (i +), obtenemos: i! ( (i + ))! pi (i +)( p ) i i0 i0 ( )! i! (( ) i)! pi (i +)( p ) ( ) i p i i ( p ) ( ) i (i +) p p i0 p i ( p ) ( ) i (i +) i ) p i ( p ) ( ) i i + i [( i0 ( i0 ( ) p p i ( p ) ( ) i i + i i0 } {{ } ( ) )] p i ( p ) ( ) i i porque podemos ver que, aplicando (), obtenemos: p i i ( p ) ( ) i (p +( p )) i0 además, podemos también observar que a la fórmula le podemos realizar cambios del mismo tipo que aplicamos anteriormente, para llegar a: i0 p i i ( p ) ( ) i i i p ( )! i! (( ) i)! pi ( p ) ( ) i i i ( )( 2)! i (i )! (( ) i)! pi ( p ) ( ) i i ( 2)! p ( ) (i )! (( ) i)! pi ( p ) ( ) i cambiando nuevamente de variable, sea ahora n i (o lo que es lo mismo i n + ) y reemplazando i Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 0 Universidad acional de San Luis - 205

obtenemos: ( 2)! p ( ) (i )! (( ) i)! pi ( p ) ( ) i i 2 ( 2)! p ( ) n! (( 2) n)! pn ( p ) ( 2) n p ( ) n0 2 n0 2 p n ( p ) ( 2) n n p ( ) (p +( p ) 2 p ( ) porque (p +( p ) 2. Pero, ahora vemos que para un j cualquiera hemos obtenido que: Prob(n,n 2,...,n ) n 2 j p j [p j ( ) + ] p 2 j ( ) + p j todos los casos posibles con n j Por otra parte, ya habíamos establecido que la función h distribuía uniformemente y por lo tanto la probabilidad de caer en la lista es la misma que la de caer en cualquiera de las listas; así tenemos que: p i i, i. Entonces, reemplazando tenemos: p j 2 ( ) + p j 2 ( ) + 2 ( 2 ) + 2 2 2 + ρ2 ρ + ρ Dado que el resultado obtenido para cada j no depende del j, todos los términos de la sumatoria serán iguales, entonces: Prob(n,n 2,...,n ) n 2 j todos los casos posibles con n j j (ρ 2 ρ ) + ρ j (ρ 2 ρ + ρ ) Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos Universidad acional de San Luis - 205

Así, reemplazando en la fórmula original obtenemos que: Prob(n,n 2,...,n ) n 2 j + 2 2 j (n,n 2,...n ) tales que i n i Prob(n,n 2,...,n ) 2 n j + 2 (n,n 2,...n ) tales que i n i j (n,n 2,...n ) tales que i n i 2 ( ρ 2 ρ + ρ ) + 2 2 ρ2 2 ρ + 2 ρ+ 2 ρ 2 ρ 2 + 2 + 2 ρ 2 2 + ρ 2 2 + ρ 2 + }{{} 2 término correctivo Prob(n,n 2,...,n ) 2 Con esto queda demostrado que con cualquiera de las dos formas, relacionando los esfuerzos medios de éxito y de fracaso o directamente deduciendo el esfuerzo medio de éxito, llegamos al mismo resultado. Esfuerzos en Rebalse Abierto Realeatorizado Total Vamos a deducir algunos de los esfuerzos medios a priori para dicho rebalse, suponiendo que la función h distribuye uniformemente y que en la estructura no se producen bajas. Principalmente vamos a deducir el esfuerzo medio de evocación exitosa a priori; pero, para ello, haremos uso nuevamente de la relación existente entre esfuerzo medio de evocación exitosa y esfuerzo medio de alta (el que a su vez se relaciona con el esfuerzo de fracaso).. Esfuerzo medio de inserción a priori Para la deducción de este esfuerzo debemos recordar la relación existente entre esfuerzos medios de inserción y fracaso en aquellas estructuras que no reestructuran. En esta estructura en particular se tiene que dar de alta un elemento es igual al costo de la búsqueda que fracasó cuando se lo incorporó (porque se detiene la búsqueda que fracasa en la celda virgen en donde se ubicará el elemento). Si en la estructura hay elementos presentes y estamos intentando insertar el elemento +, podemos ver los casos que pueden ocurrir de la siguiente manera: Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 2 Universidad acional de San Luis - 205

Costo Libre Ocupada Costo 2 Libre Ocupada Costo 3 Libre Ocupada.... el elemento se incorporará concosto si la primera celda que visitó enlabúsqueda era una celda virgen y, luego de tener elementos presentes, esto puede ocurrir con probabilidad (porque hay sólo celdas vírgenes luego de haber ubicado elementos en los baldes disponibles). Puede ocurrir que en el primer intento se encuentre con una celda ocupada, con probabilidad, y por lo tanto se deberá hacer un nuevo intento que tendrá una probabilidad de encontrar la siguiente celda virgen y con probabilidad la encontrará ocupada. Si la función se comporta bien no habrá relación entre lo que ocurrió en un intento y lo que ocurrirá en el intento siguiente; por lo tanto, podemos considerarlos eventos independientes. Así, podemos plantear que el alta costará k si debió realizar k intentos, en que se encontró con celdas ocupadas, y en el intento k encontró una celda virgen. Dicho costo ocurrirá con probabilidad: k Entonces, ahora podemos plantear el esfuerzo medio de inserción a priori que sería: i i iρ i ( ρ) ( ρ) iρ i i i Para resolver esta fórmula necesitamos analizar en detalle la sumatoria; pero como no conocemos cuánto vale debemos tratar de resolverla. En realidad no sabemos cuánto vale iρ i,perosí sabemos cómo resolver una serie geométrica con razón ρ<; o sea, sabemos que i0 i i ρ i ρ. Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 3 Universidad acional de San Luis - 205

Podemos así tratar de usar lo que sabemos para deducir el resultado de la sumatoria que nos interesa. Sea S iρ i, podemos ver que: i +2ρ +3ρ 2 +4ρ 3 +5ρ 4 +... } Suma de partida + ρ + ρ 2 + ρ 3 + ρ 4 +... } Serie geométrica de razón ρ ρ +2ρ 2 +3ρ 3 +4ρ 4 +... } Resultado de hacer la diferencia pero: ρ +2ρ 2 +3ρ 3 +4ρ 4 +... ρ ( + 2ρ +3ρ 2 +4ρ 3 +...) } {{ } Suma de partida entonces podemos plantear la siguiente igualdad: S ρ i ρsydeaquí podemos obtener que: i0 S ρs+ i0 ρ i ρs+ ρ y agrupando las S obtenemos que: y desde aquí podemos finalmente despejar a S: S ρs( ρ) S ρ S iρ i i ( ρ) 2 Ahora, volviendo al desarrollo del esfuerzo medio de inserción a priori, tendríamos: ( ρ) iρ i ( ρ) i 2. Esfuerzo medio de evocación exitosa a priori ( ρ) 2 ρ Por ejemplo, si consideramos el i-ésimo elemento incorporado, podemos ver que el esfuerzo medio a priori de buscarlo exitosamente es el esfuerzo medio de insertarlo en una estructura con i elementos presentes. Por lo tanto: Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 4 Universidad acional de San Luis - 205

Elemento Factor de Carga(ρ) Esfuerzo edio de Inserción a priori Esfuerzo edio de Evocación a priori 0 0 2.... Ahora podemos plantear formalmente el esfuerzo medio de evocación exitosa, asumiendo isoprobabilidad de consulta: i0 i i0 i i0 i i0 i i0 i, la desarrollamos para ver cómo se compor- i ta: Como tenemos que resolver ahora la sumatoria i0 i0 i + + 2 +... + + nuevamente no es sencillo resolverla directamente; pero podemos ver que es una serie armónica recortada. k Recordando que una serie armónica era: H k i,yconh k se denotaba el k ésimo número armónico. i Vemos entonces que si agregáramos los términos que forman el número armónico H i + +... +, completaríamos la sumatoria de manera i taldeformarelnúmero armónico H. Por lo tanto, podemos plantear que: i0 i H H Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 5 Universidad acional de San Luis - 205

Una serie armónica ( se ) aproxima por: H k ln k, dado que realmente para H k tenemos que: H k lnk + γ O, siendo γ la constante de Euler (γ 0,577256649..., γ < ), y si k es k suficientemente grande el término O será muy pequeño y se puede descartar. Así tenemos entonces k que: i H H ln ln( ) ln ln ρ i0 Ahora volviendo al cálculo del esfuerzo medio de evocación exitosa tenemos: i0 i ρ ln ρ ρ como 0 ρ<, ( ρ) <, y por lo tanto ln( ρ) < 0. ( ln ( ρ)) Reconocimientos El presente apunte se realizó tomando como base notas de clases, de Estructuras de la Información y de Estructuras de Datos y Algoritmos, del Ing. Hugo Ryckeboer en la Universidad acional de San Luis. Estructuras de Datos y Algoritmos: Distribución Pseudo-aleatoria de Datos 6 Universidad acional de San Luis - 205