Solución primer parcial Estructuras de datos 2022
Andrés MantillaExamen4 de Octubre de 2022
732 Palabras (3 Páginas)78 Visitas
Solución primer parcial Estructuras de datos 2022_1
package listasdoblementeencadenadascirculares_2022_1;
public class ListasDoblementeEncadenadasCirculares_2022_1 {
public static void main(String[] args) {
listacde poli1=new listacde();
listacde poli2=new listacde();
poli1.adicionar(2, 1);
poli1.adicionar(3, 0);
poli1.imprimir();
System.out.println("____________");
poli2.adicionar(2, 1);
poli2.adicionar(4, 0);
poli2.imprimir();
System.out.println("____________");
listacde poli3=new listacde();
poli3.adicionar(4, 2);
poli3.imprimir();
System.out.println("____________");
poli1.unir(poli2.cab, poli3.cab);
poli1.imprimir();
//poli3.imprimir();
poli1.multiplicar(poli2.cab);
poli1.imprimir();
}
}
class listacde{
nodolistaCirDobEnc cab;
listacde(){
cab=new nodolistaCirDobEnc(-1,-1);
cab.sig=cab.ant=cab;
}
void adicionar(int coe, int exp){
nodolistaCirDobEnc nuevo=new nodolistaCirDobEnc(coe,exp);
nodolistaCirDobEnc q=cab.ant;
nuevo.ant=q;
nuevo.sig=cab;
q.sig=nuevo;
cab.ant=nuevo;
}
void imprimir(){
nodolistaCirDobEnc aux=cab.sig;
while (aux!=cab){
System.out.println(aux.coeficiente + " X " + aux.exponente );
aux=aux.sig;
}
}
void multiplicar(nodolistaCirDobEnc cab2){
nodolistaCirDobEnc aux=cab.sig;
nodolistaCirDobEnc aux1=cab2.sig;
listacde resultado=new listacde();
while (cab!=aux){
while(cab2!=aux1){
resultado.adicionar((aux.coeficiente*aux1.coeficiente),(aux.exponente+aux1.exponente));
aux1=aux1.sig;
}
aux=aux.sig;
aux1=aux1.sig;
}
cab=resultado.cab;
}
void unir(nodolistaCirDobEnc cab2, nodolistaCirDobEnc cab3){
nodolistaCirDobEnc aux2=cab2.sig;
nodolistaCirDobEnc aux3=cab3.sig;
nodolistaCirDobEnc ult1=cab.ant;
nodolistaCirDobEnc ult2=cab2.ant;
nodolistaCirDobEnc ult3=cab3.ant;
ult1.sig=aux2;
aux2.ant=ult1;
ult2.sig=aux3;
aux3.ant=ult2;
ult3.sig=cab;
cab.ant=ult3;
}
}
class nodolistaCirDobEnc{
nodolistaCirDobEnc ant;
int coeficiente;
int exponente;
nodolistaCirDobEnc sig;
nodolistaCirDobEnc(int coe, int exp){
coeficiente=coe;
exponente=exp;
}
}
...