tarea 5

Anuncio
ESTRUCTURAS DE DATOS - TAREA No 5 - LISTAS ENLAZADAS
LISTAS ENLAZADAS SIMPLES
1. Sean los datos de una lista enlazada simple
7
6
3
2
7
3
2
3
NULL
Y sea la función
int funcion(int x){
Nodo aux=cab;
int c=0;
while(aux!=null)
{
if(x==aux.info)
c++;
aux=aux.enlace;
}
return c;
}

Realice la prueba de escritorio de
funcion(3)
2. Sean los datos de una lista enlazada simple
7
6
3
2
3
7
2
3
NULL
Realice la prueba de escritorio de la siguiente función:
void recorrer(){
Nodo aux=cab;
Nodo A;
while(aux!=null){
A=aux.enlace;
while(A!=null && A.info!=aux.info){
System.out.print(A.info);
A=A.enlace;
}
aux=aux.enlace;
System.out.println();
}
}
3. Sean los datos de una lista enlazada simple
7
6
3
2
3
7
2
3
Realice la prueba de escritorio de la siguiente función:
void recorrer(){
Nodo aux=cab;
Nodo A;
while(aux!=null){
A=aux.enlace;
while(A!=null && A.info!=aux.info){
System.out.print(A.info);
A=A.enlace;
}
aux=aux.enlace;
System.out.println();
}
}
NULL
4. Sean los datos de una lista enlazada simple
6
7
3
2
3
7
2
3
NULL
Realice la prueba de escritorio de la siguiente función:
void muestra(){
Nodo aux=cab;
while(aux!=null)
aux=aux.enlace;
while(cab!=aux){
Nodo p=cab;
while(p.enlace!=aux){
System.out.print(p.info);
p=p.enlace;
}
aux=p;
System.out.println();
}
}
5. Sea la función:
void probar(int x){
if(cab==null)
cab=new Nodo(x);
else{
Nodo aux=cab;
while(aux!=null){
if(x==aux.info)
break;
aux=aux.enlace;
}
if(aux==null){
Nodo temp=new Nodo(x);
temp.enlace=cab;
cab=temp;
}
}
}
Realice la prueba de escritorio de la función con las siguientes llamadas consecutivas:
probar(1);
probar(5);
probar(3);
probar(1);
probar(1);
probar(3);
probar(6);
6. Sea la función:
void insertar(int x){
if(cab==null)
cab=new Nodo(x);
else{
Nodo temp=new Nodo(x);
if(x>cab.info){
Nodo aux=cab;
while(aux.enlace!=null)
aux=aux.enlace;
aux.enlace=temp;
}
else{
temp.enlace=cab;
cab=temp;
}
}
}
Realice la prueba de escritorio de la función con las siguientes llamadas consecutivas:
insertar(1);
insertar(5);
insertar(3);
insertar(1);
insertar(1);
insertar(3);
insertar(6);
LISTAS ENLAZADAS DOBLES
7. Sea la siguiente lista enlazada doble
7
3
3
4
5
6
NULL
Realice la prueba de escritorio de la siguiente funcion
5
8
NULL
8
NULL
void muestra(){
Nodo A=first;
Nodo B=last;
while(A!=B & A!=null & B!=null){
System.out.print(A.info+B.info+" ");
A=A.sig;
B=B.ant;
}
}
8. Sea la siguiente lista enlazada doble
7
3
3
4
5
6
NULL
Realice la prueba de escritorio de la siguiente funcion
5
void funcionA(){
Nodo A=first;
Nodo B=last;
while((A!=null & B!=null) && A.info!=B.info){
A=A.sig;
B=B.ant;
}
while(A!=B & A!=null){
System.out.print(A.info+" ");
A=A.sig;
}
}
9. Sea la siguiente lista enlazada doble
7
3
3
4
5
6
NULL
Realice la prueba de escritorio de la siguiente función
5
void ver(){
Nodo A=first;
Nodo B=last;
Nodo aux;
while(A!=B & A.sig!=B.ant){
aux=A;
while(aux!=null){
System.out.print(aux.info);
aux=aux.sig;
}
aux=B;
while(aux!=null){
System.out.print(aux.info);
aux=aux.ant;
}
System.out.println();
A=A.sig;
B=B.ant;
}
}
NULL
Descargar