Las estructuras de datos son una forma de organizar los datos en la computadora, de tal manera que
nos permite hacer una operaciónes con ellas de forma muy eficiente. Es decir, igual que un array
introducimos un dato y eso es prácticamente inmediato, no siempre lo es, según qué estructuras de
datos y qué operaciones. Depende que algoritmo queramos ejecutar , habrá veces que sea mejor
utilizar una estructura de datos u otra estructura que nos permita más velocidad. Las estructuras de
datos son un medio para manejar grandes cantidades de datos de manera eficiente para usos tales
como grandes bases de datos y servicios de indización de Internet.
composición
tablas
Las tablas permitirán almacenar los datos.
consultas
Con las consultas podremos acceder a los datos
almacenados, ordenarlos y filtrarlos por diferentes criterios.
informes
Los informes serán la forma más eficaz de presentar nuestros datos.
formularios
Con los formularios se facilitan las tareas de introducción de datos
tipos
Las estructuras contiguamente asignadas
están compuestas de bloques de memoria únicos, e
incluyen a los arrays, matrices, heaps, y hash tables.
heaps
En computación, un montículo (o heap en inglés) es una estructura de datos del tipo árbol con
información perteneciente a un conjunto ordenado. ... Un árbol binario es completo cuando todos los
niveles están llenos, con la excepción del último, que se llena desde la izquierda hacia la derecha.
hash tables
Una tabla hash, matriz asociativa, hashing, mapa hash, tabla de dispersión o tabla fragmentada es
una estructura de datos que asocia llaves o claves con valores. La operación principal que soporta de
manera eficiente es la búsqueda: permite el acceso a los elementos almacenados a partir de una
clave generada.
Las estructuras enlazadas
están compuestas de distintos fragmentos de memoria unidos
por pointers ó punteros, e incluyen a los lists, trees, y graphs.
En ciencias de la computación, un puntero es un objeto del lenguaje de programación, cuyo valor se
refiere a otro valor almacenado en otra parte de la memoria del ordenador utilizando su dirección.
Los contenedores
Son estructuras que permiten almacenar y recuperar datos en un orden determinado sin importar su
contenido, en esta se incluyen los stacks y queues.
Array
Esta estructura es “la” fundamental de las estructuras contiguamente asignadas.
Arrays ó arreglos son estructuras de datos de tamaño fijo de modo que cada
elemento puede ser eficientemente ubicado por su index (índice) ó dirección.
ventajas
Al tener un espacio contiguo en memoria cada index de cada elemento del array apunta
directamente a una dirección de memoria, de esta forma podemos acceder arbitrariamente a los
datos de forma instantánea puesto que sabemos la dirección de memoria exacta. Esto deriva en un
acceso de tiempo constante dado por los index.
Los arrays son puramente datos lo que significa que no es necesario desperdiciar espacio en
memoria almacenando información extra que ayude a la localización de sus elementos como es el
caso de las estructuras enlazadas, los arrays tienen eficiencia de espacio.
desventaja
La gran desventaja de los arrays es que no podemos ajustar su tamaño a la mitad de la ejecución de un
programa, pero ¿y qué tal si creamos uno nuevo con la nueva dimensión deseada?; esto sería bueno si
supiéramos el tamaño que deseamos todo el tiempo, pero si no lo sabemos sólo tenemos 2 opciones:
crear una array lo suficientemente grande para almacenar nuestros datos, pero esto deriva en un
desperdicio de memoria totalmente innecesario, ó podemos crear un nuevo array, doblar el tamaño de
éste cada vez que se necesite crecer y copiar los datos del array anterior al nuevo array, hacer esto tiene
el mismo nivel de complejidad que si tuviéramos un array único suficientemente grande, pero con la
ventaja de que sólo va a crecer cuándo sea necesario
Cronologia
Su comienzo fue en los papeles como libros y asi que hacian para
manejar cuentas al crear computadoras se crearon para facilitar y
manejar mucho mas facil, al pasar el tiempo se han creado sistemas
para mejor mucho mas la estructura de datos tales como :
Fortran
agosto 1, 1957
es un lenguaje de programación utilizado principalmente en matemáticas y en
aplicaciones de cálculo científico. John Backus, pionero de la informática
snohol
marzo 25, 1962
fue un lenguaje orientado a cadenas de texto
visual basic
junio 24, 1964
facilitar la programación en ordenadores software hecho a medida, con lo cual quedaba restringido
pascal
junio 14, 1970
su objetivo es era crear un lenguaje que facilitara el aprendizaje de
programacion utilizando programacion estructurada y "ESTRUCTURA DE
DATOS".
c++
noviembre 14, 1983
es un lenguaje de programación diseñado en 1979 por Bjarne Stroustrup. La intención de su creación
fue extender al lenguaje de programación C mecanismos que permiten la manipulación de objetos.
Java script
septiembre 14, 1995
JavaScript es un lenguaje de programación interpretado, dialecto del estándar ECMAScript. Se define
como orientado a objetos, basado en prototipos, imperativo, débilmente tipado y dinámico.