Estructura datos

Páginas: 2 (281 palabras) Publicado: 9 de septiembre de 2010
Insertar un elemento en la última posición de una lista
Razonando del mismo modo podemos insertar un nuevo nodo al final de una lista no vacía, sólo que en este caso necesitamosun puntero que nos señale al último elemento de la lista. La forma de conseguir este puntero es muy sencilla: basta con recorrer uno a uno todos los elementos de la lista hastallegar al último. Podemos reconocer el último porque es el único cuyo elemento siguiente valdrá NULL.

Cuando tengamos todos estos elementos, el proceso de inserción se resume en:1. Hacer que el último elemento deje de apuntar a NULL y pase a apuntar al nuevo nodo.
2. Hacer que el nuevo nodo apunte a NULL

Observe detenidamente la implementación enC, prestando atención a cómo se obtiene el puntero al último elemento de la lista. Recuerde que el último se identifica porque su puntero a su siguiente elemento vale NULL:t_nodo *ultimo, *nuevo;
// Primera parte: buscar el último nodo de la lista (para eso, la recorremos desde el principio)
ultimo = primero;
while (ultimo->siguiente != NULL)ultimo = ultimo->siguiente;
// Segunda parte: crear el nodo nuevo e insertarlo en la lista
nuevo = (t_nodo*) malloc(sizeof(t_nodo)); // Creamos nodo nuevo
nuevo->dato = 18;// Le asignamos un valor al dato
ultimo->siguiente = nuevo; // Lo enlazamos al (hasta ahora) último de la lista
nuevo->siguiente = NULL;// Hacemos que el siguiente del nodo nuevo sea NULL

Si aplicamos este código a la lista de ejemplo del apartado anterior obtendremos esta otra lista:

[pic]-----------------------
INSERTAR DATO _ FINAL DE UNA LISTA

F

V

R

T^LIGA Q

Q^LIGA NULO

Q^INFO DATO

CREA Q

T T^LIGA

T^LIGA != NULO

T P
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Estructura de Datos
  • Estructura De Datos
  • Estructura de datos
  • Estructura de datos
  • Estructura de datos
  • Estructuras de datos
  • Estructura de Datos
  • estructura de datos

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS