lunes, 7 de mayo de 2012

ESTRUCTURA DE DATOS


ESTRUCTURA DE DATOS
En programación, una estructura de datos es una forma de organizar un conjunto de datos elementales (un dato elemental es la mínima información que se tiene en el sistema) con el objetivo de facilitar la manipulación de estos datos como un todo o individualmente.
Una estructura de datos define la organización e interrelación de estos, y un conjunto de operaciones que se pueden realizar sobre él. Las operaciones básicas son:
Alta, adicionar un nuevo valor a la estructura.
Baja, borrar un valor de la estructura.
Búsqueda, encontrar un determinado valor en la estructura para realizar una operación con este valor, en forma SECUENCIAL o BINARIO (siempre y cuando los datos estén ordenados)…
Otras operaciones que se pueden realizar son:
Ordenamiento, de los elementos pertenecientes a la estructura.
Apareo, dadas dos estructuras originar una nueva ordenada y que contenga a las apareadas.
Cada estructura ofrece ventajas y desventajas en relación a la simplicidad y eficiencia para la realización de cada operación. De esta forma, la elección de la estructura de datos apropiada para cada problema depende de factores como la frecuencia y el orden en que se realiza cada operación sobre los datos.
 DEFINICIONES.
Los más utilizados en el desarrollo del tema son:
Campos
Los componentes de un registro se denominan campos. Cada campo tiene un nombre llamado identificador de Campo, que es algún identificador elegido por el programador cuando se declara el tipo de registro.
Registro
Un registro es un tipo de datos estructurado denominado que consta de un conjunto de elementos que pueden ser del mismo tipo o de tipos diferentes.
Archivos
Un archivo es una estructura de datos consistente en una secuencia de elementos o componentes llamados registros, todos del mismo tipo, ya sea simple o estructurado. A diferencia de los arrays un archivo puede almacenarse en un dispositivo auxiliar disco, cintas, etc. de forma que los datos obtenidos durante y después del procesamiento ni se pierdan.
Los archivos no están limitados por la memoria de su computadora, donde están contenidas las estructuras de datos. En teoría se dispone de una unidad de disco de 20 MB, podría alojar un archivo de datos de igual tamaño, incluso con memoria de 128 KB o 640 KB, típicos de las computadoras actuales
Cada archivo es referenciado por un identificador (su nombre).
 ORGANIZACIÓN DE LOS ARCHIVOS.
Los archivos se encuentran organizados lógicamente como una secuencia de registros de varias longitudes diferentes.
Los archivos de registros de longitud fija: son los que almacenan la información en los archivos mediante un encabezado y luego se introducen uno a uno los registros ubicados en posiciones consecutivas.
Los registros de longitud variable: es el almacenamiento de registros de varios tipos en un archivo y permite uno o más campos de longitudes variables y dichos campos pueden ser repetidos. La longitud de los registros debe estar definida correctamente para poder leer y escribir de forma efectiva.
 ENFOQUES GENERALES PARA LA ORGANIZACIÓN DE ARCHIVOS.
Los enfoques son:
Enfoque de acceso secuencial: Se refiere al procesamiento de los archivos de acuerdo con el orden específico. Ejemplo archivo secuenciales y de texto.
 Enfoque de acceso Directo Permite recuperar registros individuales sin leer otros registros del archivo, ejemplos archivos indizados.
 ARCHIVOS SECUENCIALES.
Se refiere al procesamiento de los registros, no importa el orden en que se haga, para eso los registros están organizados en forma de una lista y recuperarlos y procesarlos uno por uno de principio a fin.
Rudimentos de los archivos Secuenciales; dependiendo del dispositivo de almacenamiento utilizado el archivo se puede mostrar el usuario como si fuera un sistema secuencial.
Al finalizar un archivo secuencial se denota con una marca de fin de archivo. (End end-of-file)
El usuario de un archivo secuencial puede ver los registros en un orden secuencial simple.
La única forma de recuperar registros es comenzar al principio y extraerlos en el orden contemplado.
Cuestiones de programación; la manipulación de los archivos se hace en el contexto de la programación en un lenguaje por procedimientos de alto nivel. Estos lenguajes tienden a expresar la manipulación de archivos mediante subrutinas que se definen como parte del lenguaje formal o se incluyen como extensiones del lenguaje en una biblioteca estándar.
La mayor parte de los lenguajes por procedimiento de alto nivel cuenta con características que ayudan a detectar la marca de fin de archivo.
 ARCHIVOS INDIZADOS.
Es la aplicación de incluir índices en el almacenamiento de los archivos; de esta forma nos será más fácil buscar algún registro sin necesidad de ver todo el archivo.
Un índice en un archivo consiste en un listado de los valores del campo clave que ocurren en el archivo, junto con la posición de registro correspondiente en el almacenamiento masivo.
Fundamento de los Índices
a.- La colocación de un listado al inicio del archivo: para la identificación del contenido.
b.- La presentación de un segundo índice: para reflejar la información de cada punto principal del índice anterior.
c.- La actualización de los índices: Cuando se insertan y eliminan archivos, es preciso actualizar los índices para evitar contratiempos actualizando un archivo.
d.- La organización de un índice: Nos evita examinar archivo por archivo para recuperar algún registro buscado; por lo tanto ahorraríamos tiempo si tenemos una adecuado organización de los índices.
Cuestiones de Programación
Algunos lenguajes de alto nivel cuentan con subtítulos para manipular los archivos de un registro indizado.
Valiéndose de las subrutinas es posible escribir programas sin tener que preocuparse por la estructura real del sistema de índices que se aplique
Los archivos y carpetas se organizan jerárquicamente En los sistemas informáticos modernos, los archivos siempre tienen nombres. Los archivos se ubican en directorios. El nombre de un archivo debe ser único en ese directorio. En otras palabras, no puede haber dos archivos con el mismo nombre en el mismo directorio. El nombre de un archivo y la ruta al directorio del archivo lo identifica de manera exacta entre todos los demás archivos del sistema informático-no puede haber dos archivos con el mismo nombre y ruta. La mayoría de las computadoras organizan los archivos en jerarquías llamadas carpetas, directorios o catálogos. (El concepto es el mismo independientemente de la terminología usada.) Cuando una computadora permite el uso de carpetas, cada archivo y carpeta no sólo tiene un nombre propio, sino también una ruta, que identifica la carpeta o carpetas en las que reside un archivo o carpeta. En la ruta, se emplea algún tipo de carácter especial -como una barra- para separar los nombres de los archivos y carpetas. Muchos (pero no todos) sistemas informáticos usan extensiones en los nombres de archivo para ayudar a identificar que contienen.
 ACCESO A LOS ARCHIVOS
Se refiere al método utilizado para acceder a los registros de un archivo prescindiendo de su organización. Existen distintas formas de acceder a los datos:
Secuenciales; los registros se leen desde el principio hasta el final del archivo, de tal forma que para leer un registro se leen todos los que preceden.
Directo; cada registro puede leerse / escribirse de forma directa solo con expresar su dirección en el fichero por él numero relativo del registro o por transformaciones de la clave de registro en él numero relativo del registro a acceder.
Por Índice; se accede indirectamente a los registros por su clave, mediante consulta secuenciales a una tabla que contiene la clave y la dirección relativa de cada registro, y posterior acceso directo al registro.
Dinámico; es cuando se accede a los archivos en cualquier de los modos anteriormente citados.
         

2 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. Cabe mencionar como análisis que el computador electrónico es solo una maquina diseñada para seguir una serie de instrucciones que recibe a manera de información, la procesa a través del cerebro del sistema y este la indica a la computadora cuando debe ejecutar la instrucción de acuerdo a un programa. La computadora es un dispositivo electrónico capaz de recibir un conjunto de instrucciones y ejecutarlas realizando cálculos sobre los datos numéricos, o bien compilando y correlacionando otros tipos de información.
    Como precaución es importante saber un poco más sobre las evoluciones computadoras que han ido revolucionando durantes los últimos años por ende hay que estar muy claro en todo lo que se refiera a una computadora moderna. Las computadoras modernas son de tipo digital y electrónicas. Están constituidas por partes electrónicas, transistores y circuitos integrados, lo que se denomina “hardware”. Las instrucciones y los datos se denominan “software”.
    La clasificación de las computadoras en una forma concreta, está basada principalmente en los dos criterios citados anteriormente: su capacidad de computación (su potencia), y en segundo lugar, como consecuencia del primero, su tamaño como volumen. Prácticamente existe un espacio en el que se solapa la clasificación, de modo que, en muchas ocasiones, resulta difícil identificar y clasificarlas.

    ResponderEliminar