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