Las condiciones iniciales son las siguientes :
Los criterios de la búsqueda son los siguientes :
Establecido el ínidce de la clave de interpolación, queda fijado el registro Ri, de clave Ki, y determinados
los subarchivos menor y mayor.
i = ( ( K - Kl ) / ( Ku - Kl ) ) * n = factor de interpolación * n
donde :
Observar que si K = Kl ------>
factor de interpolación = ( Kl - Kl ) / ( Ku - Kl ) = 0 / ( Ku - Kl ) = 0; donde para un archivo de 70 registros i = 0 * 70 = 0
Observar que si K = Ku ------>
factor de interpolación = ( Ku - Kl ) / ( Ku - Kl ) = 1; donde para un archivo de 70 registros i = 1 * 70 = 70
Claves ----> Kl Ku
|<----------------------------------------------------->|
Factor ----> 0 1
Registro --> 1 n
Indice ----> 0 n-1
R1 Ri Rn
...------------------.......--------..................--------.......
| Kl | | | | Ki | | Ku | n slots
...------------------.......--------..................--------.......
|<---------------------->| |<----------------------->|
subarchivo menor subarchivo mayor
|<-------- Ki - Kl ---------->|
|<---------------------- Ku - Kl ---------------------->|
Si K = Ki, la clave fué hallada.
Si K < Ki, se repite el procedimiento con el subarchivo menor.
Si K > Ki, se repite el procedimiento con el subarchivo mayor.
Ejercicio : Desarrollar el procedimiento de busqueda interpolada.