CARACTERISTICAS DE LAS ESTRUCTURAS LINEALES ¿Qué es una estructura lineal? Las estructuras lineales de datos se caracterizan porque sus elementos están en secuencia, relacionados en forma lineal, uno luego del otro. Cada elemento de la estructura puede estar conformado por uno o varios sub-elementos o campos que pueden pertenecer a cualquier tipo de dato, pero que normalmente son tipos básicos. Una estructura lineal de datos os lista está conformada por ninguno, uno o varios elementos que tienen una relación dónde existe un primer elemento, seguido de un segundo elemento y así sucesivamente hasta llegar al último. El valor contenido en los elementos pueden ser el mismo o diferente. En estas estructuras se realizan operaciones de agregar y/o eliminar elementos a la lista según un criterio particular.
¿Cuáles son?
Pilas: En las pilas, las operaciones de acceso se realizan por un unico extremo de la lista, al cual normalmente se denomina tope de la pila. Las operaciones básicas sobre una pila son: crearlo, destruirla, agregar un nuevo elemento, suprimir un elemento, consultar el elemento del tope verificar si esta vacía
Colas: En las colas, estas operaciones de acceso se realizan por ambos extremos de la lista llamados gralmente, inicio y fin de la cola. Operaciones básicas son: creación, destrucción, inserción al final de un nuevo elemento, consultar que elemento esta al inicio y cual al final, y verificar si la cola está vacía.
Dipolos: Que son colas dobles, las operaciones se realizan también por ambos extremos de la lista, en este caso todas las operaciones se pueden hacer por ambos extremos, es decir se pueden insertar o eliminar elementos por el tope o por el fin, a diferencia de la COLA donde se inserta siempre por el fin y se elimina por el tope.
La lista de acceso no restringido, denominadas listas, son el tipo más gral, al cual se le considera como la superclase de las otras clases de listas. Tipo + gral de estructura lineal donde las inserciones y eliminaciones se hacen en cualquier punto de la lista, por ello se dede especificar donde se requiere que se haga la operación.
Definiciones Pila Una pila es un subtipo de las listas donde el acceso está restringido a un solo extremos de la lista, en este caso al tope de la misma. Un ejemplo de esta estructura es una pila de bandejas de un restaurante de comida rápida (self service) o una pila de platos. * Las operaciones básicas sobre una pila son: crearla, destruirla, agregar un nuevo elemento, suprimir un elemento, consultar el elemento del tope y verificar si está vacía.
Cola Una cola es otro subtipo de las listas donde el acceso está restringido a los extremos de la lista, es decir al inicio y al fin de la misma. Un ejemplo de esta estructura es una cola de personas en un restaurante de comida rápida (self service) ejemplo, se tiene que cualquier cliente del restaurante, al llegar entra a la fila de clientes que van a comer en el mismo por el final de la fila. *Las operaciones básicas son: creación, destrucción, inserción al final de un nuevo elemento, eliminación del inicio de un elemento, consultar que elemento está al inicio y cual al final, y verificar si la cola está vacía.
Dipolo Esta estructura equivale a dos colas colocadas una en un sentido y la otra en sentido contrario, por ello las operaciones de inserción y eliminación se pueden realizar por ambos extremos. Dos casos especiales se pueden tener, el dipolo de entrada restringida donde sólo se puede
insertar por un extremo y eliminar por ambos, y el dipolo de salida restringida, donde se puede insertar por ambos extremos y sólo se puede suprimir por un extremo. Se llamará a estos extremos como izquierdo (izq) y derecho (der).
Lista La lista es el tipo más general de estructura lineal donde las inserciones y eliminaciones se hacen en cualquier punto de la lista, por ello se debe especificar donde se requiere que se haga la operación. Sus operaciones básicas son: creación, destrucción, inserción, eliminación, consulta y verificación de lista vacía.
Características Estructuras de datos lineales: listas Estructura lineal compuesta por una secuencia de 0 o más elementos de algún tipo determinado y ordenados de alguna forma. Puede crecer o disminuir en el número de elementos y podrán insertarse o eliminarse elementos en cualquier posición sin alterar su orden lógico.
Listas contiguas. ● Los elementos ocupan posiciones contiguas de memoria. ● Se pueden implementar con arrays. Los elementos ocuparían posiciones correlativas del array. Presentan dos problemas: o La inserción o el borrado de elementos implica mover las posiciones para mantener el orden original.
o El número de elementos de la lista se puede modificar, pero no puede sobrepasar el tamaño máximo del array.
Estructuras de datos lineales: listas (IV) Listas enlazadas. ● Los elementos no ocupan posiciones contiguas de memoria. Aparecen dispersos por el almacenamiento. ● Cada elemento contiene una referencia al siguiente elemento de la estructura. ● El orden lógico lo darán los enlaces que hay entre elementos. ● El primer elemento en el orden lógico no tiene por qué ● El primer elemento en el orden lógico no tiene por qué corresponderse con el primer elemento almacenado. Es necesario indicar cuál es el primer elemento en el orden lógico. ● También es necesario indicar cuál será el último elemento en el orden lógico de la estructura. ● La inserción o eliminación de elementos no implica mover los elementos de sitio. Sólo se modifican las referencias al siguiente elemento. ● Si se utilizan estructuras de datos dinámicas el número de elementos será virtualmente ilimitado.
Pilas Es un tipo especial de lista. Estructura lineal de datos compuesta por una secuencia de elementos en la que las operaciones sólo se pueden realizar por uno de sus extremos llamado cima (tope o top). ● Estructuras de tipo LIFO (Last In-First Out).
Se utiliza para poder recuperar elementos en orden inverso a como entran. ● Ejemplos reales: montones de platos. ● Aplicaciones en informática. Evaluación de algunos tipos de expresiones Cuadros de diálogos, pantallas y menús desplegables. o Cada cuadro se abre encima de otro; al cerrarse uno, el cuadro activo es el último que se ha abierto.
Bibliografía
http://www.colimbo.net/documentos/documentacion/113/FPII03_Estructuras_lineales_ de_datos.pdf http://estr-org-datos.wikispaces.com/ESTRUCTURAS+LINEALES http://informatica.utem.cl/~mcast/ESDATOS/TADS/Ttema2.pdf