• Miércoles 6 de Noviembre de 2024, 02:28

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - gongi

Páginas: [1]
1
C/C++ / Re: RESPUESTA A juank
« en: Sábado 19 de Abril de 2003, 00:23 »
gracias por tu pronta respuesta, es increible., te adjunto el fuente del programa, tb otro que estoy haciendo que utiliza lista enlazada simple  y en la que  se utiliza ADM para rellenar los nodos.
Voy a mirar lo que me enviastes y muchas gracias de nuevo.

2
C/C++ / Re: LISTAS DOBLEMENTE ENLAZADAS
« en: Viernes 18 de Abril de 2003, 21:05 »
hola y gracias de antemano por este foro para los que empezamos. Espero poder ayudar algún día.
El código siguiente define una agenda mediante una lista simple. La lista añade o inserta los nodos por el criterio nombre, ya ordenados. En ella se usa un puntero a estructura (*anterior) que va guardando la dirección del nodo anterior, un puntero "auxiliar" para recorrido, intercambio, etc y un puntero nuevo para crear nodos mediante asignación dinámica de memoria. Por ejemplo si inserto un nodo, auxiliar se va trasladando  (auxiliar=auxiliar->siguiente) y anterior va guardando la posicion penultima de auxiliar (anterior = auxiliar).y se reorganizan los nodos haciendo un puente (anterior->siguiente=nuevo) y (nuevo->siguiente=auxiliar). Mi pregunta es: si creo una estructura con otro puntero que indique la direccion del nodo anterior, ademas del actual que indica el siguiente,

 struct _agenda {
   char nombre[20];
   char telefono[12];
   struct _agenda *siguiente;
   struct agenda * anterior;
};

Usando el mismo código o algoritmo para recorrer la lista (while anterior != NULL) y auxiliar = auxiliar->siguiente, veo que cuando encuentra la posición de insercion, con la asignación nuevo->siguiente= auxiliar  y  nuevo->anterior = auxiliar->anterior consigo que el nuevo elmento apunte al anterior y al siguiente, pero , como consigo que el puntero siguiente del nodo anterior apunte al nuevo nodo?. Me estoy equivocando al utilizar el mismo algoritmo que para la lista simple ?. MUchas gracias por vuestra ayuda.
 

/

Páginas: [1]