Estructuras de datos lineales y no lineales
En la entrada de esta semana se tratará el tema de estructuras de
datos lineales y no lineales. Algunos ejemplos de estas estructuras y características
de las mismas.
Para iniciar vamos a
definir que es una estructura de datos; según la universidad internacional de
Valencia en su artículo “Lo que debes saber si quieres estudiar informática” la
estructura de datos está representada por una forma determinada que tenemos de
organizar los datos de un equipo informático para que podamos utilizarlos de la
manera más efectiva posible.
Entonces en otras
palabras una estructura de datos es la forma en la que el programador
administra la información de manera que se le facilite para la tarea que debe
cumplir.
Estructura de datos lineal.
Estructura de datos lineal. |
Rosa
Arianna Paredes González, Abigail Huerta Macias, Ricardo Daniel Juárez
Hernández, Miriam
Arroyo Gutierrez, en su artículo “ESTR-ORG-DATOS” menciona que unas estructuras
de datos lineal 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.
Estas
estructuras se dividen en 2 tipos; listas de acceso no restringidas y las
listas de acceso restringidas.
Las
listas de acceso restringido son pilas, colas y dipolos. Según el artículo anterior
estas se definen de la siguiente manera.
·
Pilas: Las
operaciones de acceso se realizan por un único 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 está vacía.
·
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: Son
colas dobles, 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.
Las
listas de acceso no restringidos son también llamadas listas, en el artículo anterior
se da la siguiente definición, 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.
Estructuras de datos no lineales.
Esta
es la otra división de las estructuras de datos sobre la que se hablara en esta
entrada.
Según Mauricio
Paletta, en el artículo ingeniería en informática, las estructuras de datos no
lineales son aquellas que ocupan bloques de memoria no continuos/ lineales,
para lidiar con el problema de la fragmentación y sobre todo el crecimiento dinámico.
Además,
menciona que los datos se encuentran entrelazados unos con otros esto para
poder viajar por la estructura, en otras palabras, tener acceso a otros datos a
partir del actual.
En
estas estructuras existen 2 secciones que según Mauricio Paletta en el artículo
ingeniería en informática son los siguientes:
·
Las listas
enlazadas: Formadas por nodos que se enlazan entre si partiendo de un nodo
inicial, además, menciona que si cada nodo apunta solo a su siguiente se dice
que la lista es enlazada simple, pero si también incluye una referencia al nodo
anterior entonces esta lista se llama enlazada doble.
Árbol. |
·
Los árboles:
Tipo particular de grafo sin ciclos formada por nodos en la cual cada uno de
ellos puede apuntar a uno o varios otros nodos. Entre los nodos se establece
una relación de ascendencia/descendencia, nodo padre, nodo hijo, nodo raíz,
nodo hoja.
Estas estructuras
tienen diferencias muy notorias entre si, las cuales no hace a una mejor que la
otra, simplemente le da al programador la facilidad de elegir la estructura de
datos que le ayude a solucionar la tarea por realizar de una manera más rápida y
eficiente.
Acá
queda demostrado esa frase de que la programación es muy flexible pues le da al
programador la libertad de elegir la manera en que quiere realizar una tarea.
Fuentes:
Comentarios
Publicar un comentario