BUSQUEDA SECUENCIAL Y DIRECTA, ESTRUCTURA Y · PDF fileAntes de acceder a un fichero, tanto...

Preview:

Citation preview

BUSQUEDA

SECUENCIAL Y

DIRECTA,

ESTRUCTURA Y

OPERACIONES

MARCELA MARQUEZ

REBECA NAVARRO FONSECA

GUADALUPE RUIZ ANGULO

JONATHAN ALEXIS TOPETE

BUSQUEDA

Cuando se realizan operaciones de búsqueda es preciso considerar la eficiencia(complejidad) de los algoritmos empleados en la búsqueda. En el grado de eficiencia en una búsqueda será vital cuando se trata de localizar una información en una lista o tabla memoria, o bien en un archivo de datos.

TIPOS DE BUSQUEDA

BUSQUEDA SECUENCIAL

La búsqueda secuencial busca un elemento de una lista utilizando un valor de destino llamado clave. En una búsqueda secuencial (a veces llamada búsqueda lineal). Los elementos de una lista o vector se exploran en secuencia uno después de otro.

La búsqueda secuencial se utiliza normalmente cuando el array no está ordenado. Comienza en el principio del array y busca hasta que se encuentra el dato buscado y se llega al final de la lista.

Hay 2 tipos de búsqueda secuencial:

BUSQUEDA SECUENCIAL MEDIANTE BLOQUES:

Consiste en tomar bloques de registros en vez de registros aislados. Un bloque es un conjunto de registros. Su tamaño es arbitrario y depende del numero de registros.

BUSQUEDA SECUENCIAL CON INDICES:

Trabaja con bloques y con archivos de índices. En el archivo de índices se almacenan las claves que hacer referencia a cada bloque y la dirección de los bloques en el archivo. La búsqueda de un elemento comienza recorriendo los archivos de índices, comparando las claves ahí almacenadas con la clave del elemento en cuestión.

La desventaja de este método es que requiere mas espacio de memoria, ya que se trabaja con 2 archivos:

El principal en el cual se almacenan los registros.

Secundario donde se almacenan los índices.

Una forma de acelerar el proceso de búsqueda consiste en mantener en memoria principal el archivo de índices, el cual se recorre secuencialmente.

La eficiencia de una búsqueda

secuencial es O(n).

La eficiencia de una búsqueda binaria es

O(log n).

BUSQUEDA DIRECTA

Cuando la información almacenada en una base de datos es homogénea, por ejemplo alfanumérica, es posible utilizar algoritmos tradicionales de búsqueda (arreglos ordenados, búsqueda binaria, árboles balanceados, etc.) para recuperar un registro dada una llave.

En una base de datos tradicional la información es ordenada solo por algunos campos, que son llamados ``campos llave'', mientras que se deja en libertad el resto de los campos de un registro. Cuando se indexa por cualquier campo también se realiza búsqueda directa. Es incluso posible hacer con rangos en cualquiera de los campos, por ejemplo:

select nombre, apellido, edad from DATOSPERSONAL

Se puede definir de manera mas general el

concepto de búsqueda directa, teniendo en cuenta

que nuestra implementación fue hecha utilizando

las bases de datos de un diccionario. Dada una

llave (palabra), buscamos los documentos

(conceptos) que contienen las palabras definidas

en el diccionario. Si la palabra se encontró,

devolver la definición que corresponde a la

palabra, si no, regresar un mensaje de palabra no

encontrada o simplemente nada.

Operaciones con archivos

Lectura (consulta).- Esta operación consiste el leer la información contenida en fichero sin alterarla.

Escritura (modificación).- Consiste en actualizar el contenido del fichero bien añadiéndole nuevos datos o borrando parte de los que contenía.

Apertura.- Antes de acceder a un fichero, tanto para consultar como para actualizar su información, es necesario abrirlo. Esta operación se debe realizar previamente a las operaciones de lectura o escritura.

Cierre.- Cuando se ha terminado de consultar o modificar un fichero, por lo general, del mismo modo que se tuvo que abrir para realizar alguna operación de lectura/escritura sobre él, éste deberá ser cerrado.

OPERACIONES

CON ARCHIVOS

ASIGNACIO

N

Es la organización

de los registros

según sus

cualidades.

APERTUR

A

Es la

asignación de

un espacio en el

en memoria

dándole nombre

al archivo

Es la acción de

modificación del

nombre del

archivo.

Es el proceso para

poder acceder a los

datos el acceso puede

ser específico, grupal o

global.

ACTUALIZACI

ÓN

Es la manera en la

que se va usando el

archivo pueden ser

altas, bajas,

cambios.

Es la asociación de un

nombre de archivo con

un identificador para

que pueda ser usado.

Es la cancelación o

cierre de un canal de

comunicación

previamente establecido

con un archivo.

CIERRE

Es el dar de alta el canal

por el cual se ara la

comunicación del

archivo.

CREACIO

N

Es la eliminación

física del archivo

donde quiera que

este.

CONSULTA

ELIMINACI

ON RENOMBRA

DO

CLASIFICA

CION MEZCLA

PARTICION

Es la

combinación de

dos o más

archivos para

crear un archivo

único.

Es la

descomposición de

un archivo en dos

o más.

Es el extender un

archivo a partir de

los datos

contenidos en

otro.

Es la generación

de un nuevo

archivo o la

extensión de uno

ya existente.

IMPORTACI

ON

EXPORTACI

ON

Estructuras de un archivo

Los archivos se pueden estructurar de varias maneras, las más comunes son :

“Secuencia de bytes”:

El archivo es una serie no estructurada de bytes.

Posee máxima flexibilidad.

El S. O. no ayuda pero tampoco estorba.

“Secuencia de registros”:

El archivo es una secuencia de registros de longitud fija, cada uno con su propia estructura interna.

“Árbol ”:

El archivo consta de un árbol de

registros, no necesariamente de la

misma longitud.

Cada registro tiene un campo

key (llave o clave) en una posición

fija del registro.

El árbol se ordena mediante el

campo de clave para permitir una

rápida búsqueda de una clave

particular.