mozilla

Páginas: 17 (4053 palabras) Publicado: 24 de mayo de 2015
Listas enlazadas – Clase Lista,Nodo en c++ | Ima...

https://ronnyml.wordpress.com/2009/07/04/listas-...

Imaginemos un mundo libre – El blog de Ronny
La paz interior comienza en el momento en el que decides no permitir, que ninguna persona o evento,
tome el control de tus emociones.

Listas enlazadas – Clase Lista,Nodo en c++
with 18 comments
Una lista es una estructura de datos que nos permiteagrupar elementos de una manera organizada. Las
listas al igual que los algoritmos son importantísimas en la computación y críticas en muchos programas
informáticos.
Las listas están compuestas por nodos, estos nodos tienen un dato o valor y un puntero a otro(s)
nodo(s).
Existen varios tipos de listas: Simplemente enlazada, doblemente enlazada, circular simplemente
enlazada, circular doblementeenlazada.
Vamos a revisar las listas enlazadas simples, por ser el punto de partida y fundamentales para poder
entender las otras.
Una lista enlazada tiene un conjunto de nodos, los cuales almacenan 2 tipos de información: El dato que
contienen y un puntero al siguiente nodo en la lista. El último nodo de la lista tiene como siguiente nodo
el valor NULL. Entonces las listas enlazadas simples solopueden ser recorridas en una dirección,
apuntando al nodo siguiente, mas no a un nodo anterior.
Aquí una ejemplo de un lista enlazada simple.
1
2
3
4
5
6
7
8
9
10
11
12
13
14

1 of 23

En cristiano:
55-> 60-> 31-> 5-> 4-> 51-> 9-> 27-> 68-> 62-> NULL
Internamente:
Nodo-> Dato: 55
Nodo-> Dato: 60
Nodo-> Dato: 31
Nodo-> Dato: 5
Nodo-> Dato: 4
Nodo-> Dato: 51
Nodo-> Dato: 9
Nodo-> Dato: 27
Nodo-> Dato:68
Nodo-> Dato: 62

Direcion:
Direcion:
Direcion:
Direcion:
Direcion:
Direcion:
Direcion:
Direcion:
Direcion:
Direcion:

0x3d2c00
0x3d2c80
0x3d2c90
0x3d2ca0
0x3d2cb0
0x3d2cc0
0x3d3ab8
0x3d3ac8
0x3d3ad8
0x3d3ae8

Siguiente:
Siguiente:
Siguiente:
Siguiente:
Siguiente:
Siguiente:
Siguiente:
Siguiente:
Siguiente:
Siguiente:

0x3d2c80
0x3d2c90
0x3d2ca0
0x3d2cb0
0x3d2cc0
0x3d3ab8
0x3d3ac8
0x3d3ad80x3d3ae8
0

30/04/15 14:17

Listas enlazadas – Clase Lista,Nodo en c++ | Ima...

https://ronnyml.wordpress.com/2009/07/04/listas-...

Obviamente, internamente no existen las palabras nodo, dato,dirección y siguiente, es solo una
representación.

Como una lista es una estructura de datos dinámica, el tamaño de la misma puede cambiar durante la
ejecución del programa.
Como vimos en post anteriores, sepuede generar memoria dinámicamente para un array, pero un array
es una estructura estática pues su tamaño tiene un limite y así creáramos array dinámicos hay que
redimensionar el tamaño si es necesario, lo cual ya implica un costo de volver a generar memoria
dinámica.
Entonces podemos ver una ventaja de la listas sobre los arrays: No tener que redimensionar la estructura
y poder agregar elementotras elemento indefinidamente.
Cuando uno ya ha trabajado con arrays (vectores y matrices) y empieza a estudiar las listas, se da cuenta
que una restricción de las listas es el acceso a los elementos. En un vector podíamos hacer algo como
v[50] y nos estábamos refiriendo al índice 50 del vector v. A esto se le conoce como acceso aleatorio.
En el caso de las listas el acceso es secuencial, esdecir, para acceder a un elemento del conjunto debemos
de recorrer uno por uno los elementos hasta llegar al solicitado. Rápidamente se puede concluir que el
tiempo de acceso a los elementos de un array es muchísimo más rápido que en una lista. Esta es una
gran desventaja de las listas, por lo que buscar elementos por índice sería muy costoso. Esto no quiere
decir que trabajar con arrays sea mejor quecon listas. Las listas son muy flexibles y para muchos casos
son imprescindibles.
Bueno, aquí va la primera práctica que hice sobre listas enlazadas. Implementación de una clase Lista,
clase Nodo y los siguientes métodos:
Añadir un elemento al inicio.
Añadir un elemento al final
Añadir un elemento de manera ordenada
Llenar la lista por teclado
Llenar la lista aleatoriamente
Imprimir la lista...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Caso Mozilla
  • mozilla corporation
  • Caso mozilla
  • Opennig Y Mozilla
  • Mozilla Co
  • Mozilla
  • Mozilla
  • Mozilla

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS