La Web del Programador: Comunidad de Programadores
 
    Pregunta:  14626 - ESTRUCTURAS DINáMICAS
Autor:  OSCAR JAVIER PEDROZA MOGOLLON
Buenos días, estoy realizando un programa que utiliza estructuras dinamicas(listas circulares doblemente encadenadas), y necesito manejar la información con archivos directos.

Para buscar cierto dato (nombre del libro), como hago para buscarlo en forma directa.Cada registro debe llevar alguna clave?????
No se como se hace, pues la forma que aparece en la mayoria de los libros de turbo pascal es en forma secuencial.

  Respuesta:  Kreuzigen 2
Si, debes crear ordenar los datos del archivo de alguna manera, en el caso de "nombre del libro", puedes hacerlo por orden alfabetico, el chiste es lo siguiente: debes almacenar en un archivo (puede ser el mismo) en que posicion del archivo de datos comienzan los libros con la letra A, en que posicion los de la letra B, etc. (por ejemplo),de esa manera puedes hacer un fseek y encontrar el primer libro con la letra A y a partir de ahi buscar secuencialmente el libro deseado, es la forma mas facil, existe la mas eficiente con Arboles B, pero ya es mas complicada de explicar, necesitarias un buen libro.