ORGANIZACIÓN RELATIVA ACCESO DIRECTO

Slides:



Advertisements
Presentaciones similares
Teoría de Números Instructor: Luis Eduardo Falcón.
Advertisements

LICENCIATURA EN SISTEMAS COMPUTACIONALES EN ADMINISTRACION
III - Gestión de memoria
Nuestro reto es educar al pensamiento, para que razone de acuerdo a ciertas reglas; con ello podremos ser más eficientes al momento en que ordenamos.
Unidad de competencia II Estadística descriptiva:
EQUIPO ·# 3 SISTEMAS OPERATIVOS
Ordenamiento Interno y Búsqueda Binaria
ECUACIONES DE 2º GRADO.
Método para resolver colisiones
Unidad académica: Ingenierías
PROGRAMACION DE ESTRUCTURAS DE DATOS
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
Windows XP sp3.
SISTEMAS DE ECUACIONES RESOLUCIÓN POR EL METODO DE GAUSS
BASES DE DATOS ISC. EDER CHAVEZ ACHA.
M.I.A Daniel Alejandro García López.  Primer componente: Arreglo de cubetas.- Es una arreglo A de tamaño N, en el que se puede considerar que cada celda.
TEMA 6: DIVISIÓN DE POLINOMIOS
DERIVADAS PARCIALES Gráficas.
Material de apoyo Unidad 8 Estructura de datos
HILOS Y COMUNICACIÓN ENTRE PROCESOS
Potencias de exponente natural mayor que 1
Potencias de exponente natural mayor que 1
GRAFOS HUGO ARAYA CARRASCO.
Programación de Computadores
EXPONENTES Y RADICALES
PROGRAMACION II.  Es un conjunto de datos no necesariamente del mismo tipo, los cuales se podrán manipular o realizar cualquier operación sobre cada.
Estadística I.
Desigualdades e Inecuaciones

Estructuras de Datos Arreglos.
Elaborado por: Guillermo Baquerizo I Término
Sistemas decimal, binario, octal y hexadecimal
Estructura de Datos II Equipo 4 Equipo 7 Acosta Montiel Miguel A.
Tablas de Hash.
Tema 10.3: Asignación de Espacio No Contiguo. Tema 10.3: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.),
(Organización y Manejo de Archivos)
Descomposición Factorial Unidad 5
Asignación de Espacio No Contiguo
Diseño de algoritmos La computadora puede realizar procesos y darnos resultados, sin que tengamos la noción exacta de las operaciones que realiza. Con.
Capítulo 7 Gestión de memoria.
Estadística II.
1. 2 Problema Telemóviles, una gran companía de telefonía, requiere mejorar la capacidad de identificación del usuario que llama: –dado un número de usuario,
COMPUTO I - UASF SISTEMA BINARIOS.
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
A = ½ (x1y2 + x2y3 + … + xny1 – x1yn – … – x3y2 – x2y1)
Elaboración de algoritmos usando lógica de programación
Espero que esta presentación les ayude a desarrollar el cuadro estadístico de la manera más eficiente posible, solo tomen en cuenta lo siguiente:  El.
Taller PSU Matemática Algebra
“CURSO PROPEDÉUTICO PARA EL MEJORAMIENTO DEL PENSAMIENTO MATEMÁTICO”
Estadística Reporte Ejecutivo
Análisis de Fourier.
Algoritmos y Desarrollo de Programas I
MEDIDAS DE TENDENCIA CENTRAL
y pensamiento algebraico
MIA - Grupo 5 Unidad 2.
ORDENAMIENTO DE DATOS Jorge Méndez Sánchez Eliúh Cuecuecha Hernández

Programación II Concepto de Archivos.
Sistema Binario.
Medidas de tendencia central
SISTEMAS DE ECUACIONES
MEDIDAS DE TENDENCIA CENTRAL
Soluciones en Serie de Ecuaciones Lineales
ESTRUCTURAS DE DATOS “Conceptualización de estructuras de datos” Por: Eduardo Robayo.
Álgebra, ecuaciones y sistemas
Medidas de tendencia central
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ Facultad de Ingeniería de Sistemas Computacionales Programa de Lic. en Informática Educativa Computación.
Números y Fracciones 1.Los números naturales y los enterosLos números naturales y los enteros 2.Números primosNúmeros primos 3.Máximo común divisor y mínimo.
UNIVERSIDAD AUTÓNOMA DEL ESTADO DE MÉXICO FACULTAD DE INGENIERÍA COORDINACIÓN DE MATERIAS PROPEDÉUTICAS INGENIERÍA EN SISTEMAS ENERGÉTICOS SUSTENTABLES.
Transcripción de la presentación:

ORGANIZACIÓN RELATIVA ACCESO DIRECTO Concepto Funciones Hash

Organización Relativa Es aquella organización que plantea ,que el archivo se mantiene organizado en modo directo debido a que el orden físico no corresponde con el orden lógico. Para accesar a los datos almacenados en el archivo se hace de manera directa por la posición que ocupan en el archivo. Los registros se deben almacenar en un medio direccionable y tener un campo clave el cual será transformado para ser utilizado como dirección de almacenamiento. Por lo tanto debe existir la correspondencia entre los valores clave y las direcciones disponibles en el medio de almacenamiento

Ventajas Los registros se pueden leer y escribir en cualquier orden y posición Es mas rápido el acceso a los registros Se pueden realizar accesos secuenciales Desventajas Se requiere programar la relación entre el contenido del registro y la posición que ocupa. Existen huecos libres dentro del medio de almacenamiento y entre registros El algoritmo para la conversión de las claves y para el almacenamiento deben ser creados de modo que dejen el menor numero de huecos libres y se genere el menor numero de colisiones de dirección.

Dirección Relativa  Dirección Absoluta Funciones Hash Dada la siguiente expresión Dirección Relativa  Dirección Absoluta A toda dirección relativa corresponde una dirección absoluta, es decir a cada registro a almacenar de acuerdo a un campo clave, le corresponde una dirección absoluta en el medio de almacenamiento. Por lo tanto se debe transformar la clave en un dirección, por medio de las funciones Hash . h(x)

Aritmética Modular Se elige un número primo, o con pocos divisores, mayor que el número N de registros a almacenar. La función se define: h(k) = k mod m para que las direcciones vayan de 0 a m-1 Ó h(k) = k mod m para que las direcciones vayan de 1 a m En esta formula m ha de ser primo para minimizar el número de colisiones

Ejemplo: En un archivo se almacenaran 996 direcciones (registros), para esto se elige un número primo cercano 997, aplicando la formula se obtiene: Para : Fórmula Resultado 245643 h(245643) = 245643 mod 997 = 381 245981 h(245981) = 245981 mod 997 = 719 257135 h(257135) = 257135 mod 997 = 906

Plegamiento Consiste en partir la clave k en varias partes k1,k2,k3..kn, y la combinación de las partes de un modo conveniente (con frecuencia sumando las partes) da como resultado la dirección del registro. Cada parte ki, a excepción de la última tiene el mismo número de dígitos que la dirección especificada. La función hash es: h(k) = k1,k2,k3..kn

Ejemplo : El archivo de alumnos con el campo clave de 6 dígitos, este se puede dividir en grupos de tres y tres dígitos. Aplicando al función : Para : Formula Resultado 245643 h(245643) = 245 + 643 = 888 245981 h(245981) = 245 + 981 = 1226  queda 226 ( se ignora el 1) 257135 h(257135) = 257 + 135 = 392

O a la inversa usando las partes pares k2,k4 antes de sumarlas para obtener otras direcciones. Para : Formula Resultado 245643 h(245643) = 245 + 346 = 591 245981 h(245981) = 245 + 189 = 434 257135 h(257135) = 257 + 531 = 788

Mitad del cuadrado Consiste en calcular el cuadrado de la clave k y la dirección del registro viene representada por los dígitos de k2 que ocupan cierta posición. La función hash es: h(k) 2 = c Donde c se forma por los dígitos de k2 que están en las posiciones P1,P2,..,Pi

Ejemplo : El archivo de alumnos con el campo clave de 6 dígitos, se escogen los dígitos 4to, 5to y 6to por la derecha. Para : Fórmula Resultado 245643 h(245643)2 = 60340483449 483 245981 h(245981)2 = 60506652361 652 257135 h(257135)2 = 66118408225 408

Direccionamiento abierto Resolución de Colisiones Las funciones hash no siempre ofrecen direcciones distintas, cuando se presentan direcciones repetidas se trata entonces de una colisión, para resolver esto se deben seguir métodos de solución. Direccionamiento abierto Se trata de buscar la primera dirección disponible después de la que dio como resultado la función hash.

El problema de este método al ser lineal, llega a agrupar los registros en posiciones contiguas, lo cual aumenta el tiempo de búsqueda de un registro. Esto se puede minimizar por medio de : Prueba Cuadrática h(k) = p donde p se repite para otro valor clave k, entonces : p,p+1,p+2,p+3…p+n p,p+1,p+4,p+9..p+i2

Ejemplo: Suponiendo que se obtiene lo siguiente: k formula p 245643 h(245643)2 = 60340483449 483 y p colisiono, entonces la búsqueda de lugar libre seria 438+12 = 439 o 438+22 =442 o 438+32 = 447

Prueba doble direccionamiento hash En este método se aplica una segunda función hash para k, de manera que : Primera hash h(k) = p y existe colisión, entonces segunda hash h(k) = p’ por lo tanto la dirección absoluta p + p’ En caso de seguir la colisión, se trataría lo siguiente: p, p+p’, p+2p’, p+3p’ y así sucesivamente

Direccionamiento por encadenamiento o cerrado En este método el problema de colisiones se resuelve utilizando listas ligadas, que contendrán todos los registros que tienen la misma dirección