Advertisement
egyware

Untitled

Apr 30th, 2015
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.83 KB | None | 0 0
  1. void Insertar(Lista *lista, int v) {
  2.    pNodo nuevo, anterior;
  3.  
  4.    /* Crear un nodo nuevo */
  5.    nuevo = (pNodo)malloc(sizeof(tipoNodo));
  6.    nuevo->valor = v;
  7.  
  8.    /* Si la lista está vacía */
  9.    if(ListaVacia(*lista) ) {
  10.       /* Añadimos la lista a continuación del nuevo nodo */
  11.       nuevo->siguiente = *lista;
  12.       /* Ahora, el comienzo de nuestra lista es en nuevo nodo */
  13.       *lista = nuevo;
  14.    } else {
  15.       /* Buscar el nodo de valor menor a v */
  16.       anterior = *lista;
  17.       /* Avanzamos hasta el último elemento o hasta que el siguiente tenga
  18.          un valor mayor que v */
  19.       while(anterior->siguiente)
  20.          anterior = anterior->siguiente;
  21.       /* Insertamos el nuevo nodo después del nodo anterior */
  22.       nuevo->siguiente = anterior->siguiente;
  23.       anterior->siguiente = nuevo;
  24.    }
  25. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement