Colas
Estoy haciendo una agenda en visual c++ con colas, pero no se como borrar un determinado contacto. Si alguien me pudiera ayudar le estaria muy agradecido.
Usa dos punteros, uno que avance y otro que registre el contacto anterior en el que estuvo el primero. Cuando el primero llegue al contacto que queres borrar, el segundo apuentará al contacto anterior a éste.
Tenes que hacer que el apuntador al siguiente del segundo, apuente al siguiente del primero. y despues liberar la memoria del contacte que borras. asi no perdes el resto de la cola.
digamos que tenes la siguiente cola:
1->2->3->4->5->6->7->8->9->nil
y queres borrar el 6, teniendo punteros act y ant
entonces act va a apuntar a 6 y ant a 5
ant->siguiente = act->siguiente hara que la cola quede:
1->2->3->4->5->7->8->9->nil
y despues destruis 6
Tenes que hacer que el apuntador al siguiente del segundo, apuente al siguiente del primero. y despues liberar la memoria del contacte que borras. asi no perdes el resto de la cola.
digamos que tenes la siguiente cola:
1->2->3->4->5->6->7->8->9->nil
y queres borrar el 6, teniendo punteros act y ant
entonces act va a apuntar a 6 y ant a 5
ant->siguiente = act->siguiente hara que la cola quede:
1->2->3->4->5->7->8->9->nil
y despues destruis 6
