struct NodoD { int info; NodoD* ante; NodoD* sgte; }; void addAlFinal (NodoD* &primero, NodoD* &ultimo, int x) { NodoD* nuevo = new NodoD; nuevo->info = x; nuevo->sgte = NULL; if (primero==NULL) (primero==NULL) { nuevo->ante = NULL; primero = nuevo; ultimo = nuevo; } else { nuevo->ante = ultimo; ultimo->sgte = nuevo; ultimo = nuevo; } } void ingresarDatos(NodoD* &primero, &ultimo) { int n, x; cout<<"Ingrese cantidad de datos: "; cin>>n; for (int i=0; i>x; addAlFinal(primero, ultimo, x); } } void mostrarDeIzqDer(NodoD* primero) { cout<<"-----Lista de Izq a Der-----\n"; NodoD* p = primero; while(p!=NULL) { cout<info<sgte; } } void mostrarDeDerIzq(NodoD* ultimo) { cout<<"-----Lista de Der a Izq-----\n"; NodoD* p = ultimo; while(p!=NULL)
2.
Ingresar 2 listas doblemente enlazadas y reportar: a) Si las listas son iguales iguales en tamaño y contenido b) Si las listas son son iguales en tamaño pero no no en contenido c) No tienen el mismo tamaño ni contenido.
#include using namespace std; struct NodoD { int info; NodoD* ante; NodoD* sgte; };
NodoD* void addAlFinal(NodoD* &primero, NodoD* &ultimo, int x) { NodoD* nuevo = new NodoD; nuevo->info = x; nuevo->sgte = NULL; if (primero==NULL) { nuevo->ante = NULL; primero = nuevo; ultimo = nuevo; } else { nuevo->ante = ultimo; ultimo->sgte = nuevo; ultimo = nuevo; } } void ingresarDatos (NodoD* &primero, NodoD* &ultimo, int a) { int n, x; cout<<"-------LISTA cout<<"-------LISTA "<>n; for (int i=0; i
1