martes, 8 de noviembre de 2011

ALMACENAMIENTO DE DATOS

ALMACENAMIENTO DE DATOS

Los arreglos y las estructuras de datos (listas, colas, pilas, etc.) son entes informáticos abstractos que nos permiten almacenar datos, es decir, en un lenguaje de programación como Java, objetos y/o tipos primitivos (int,d oub le,char,b oolea n, etc...).
Los arreglos son, probablemente, la estructura más usada para almacenar y ordenar datos dentro de la programación, debido a que la sintaxis para acceder a sus datos es muy amigable para el programador. Por ejemplo, si tenemos un arreglo deint’s, y queremos sumar el segundo número de un arreglo con el cuarto, simplemente usamos la notación[ ] para acceder a ellos:
O, por ejemplo, si queremos llenar un arreglo con todas las letras minúsculas, desde la a la
z, simplemente hacemos:
(*)
(*) ver “Conversión por cast”, capitulo 4, página 100
Y así,minú sculas sería igual a {'a', 'b', 'c', 'd',..., 'z'}.
Si tratamos de representar gráficamente lo que un arreglo significa en la memoria,
podríamos analizar el siguiente esquema:
Y para acceder a un objeto en el arreglo, simplemente hacemos referencia a su índice y
usamos la notación[ ].
Pero esta forma de almacenamiento tiene ciertas desventajas, por ejemplo:
1) Los arreglos tienen una capacidad de almacenamiento determinada y no modificable, lo que se transforma realmente en un problema si queremos almacenar datos sin saber cuantos almacenaremos en total, o si la cantidad de datos es variable.
2) Por (1), los programadores utilizan arreglos “lo suficientemente grandes”, desperdiciando espacio de memoria que nunca se utiliza. Por ejemplo, si queremos registrar a los clientes que compraron en nuestra tienda cada día, podríamos crear un arreglo de una capacidad estimada de 100 espacios para cada día. Pero en el caso que en una ocasión sólo entraran a comprar 22 clientes, 78 espacios del arreglo son desperdiciados, y, por lo tanto, espacio en la memoria es desperdiciado. O peor aún, que entraran 150 personas a comprar y que nuestro arreglo no fuera capaz de almacenar a todos los clientes. En estos casos, los arreglos no son la herramienta indicada.
3) La inserción de un objeto al principio del arreglo, sin sobrescribir el primer espacio, se torna mas complicada, pues debemos correr en un espacio a la derecha a todo el resto de los datos. Es decir, los arreglos no manejan los datos de forma dinámica.
Para arreglar este problema, haremos uso de una nueva forma de almacenamientos: las
estructuras datos basadas en punteros, con su principal exponente, la Lista Enlazada.

No hay comentarios:

Publicar un comentario