Auxiliar N 4 - U

Anuncio
Universidad de Chile
Facultad de Cs. Físicas y Matemáticas
Departamento de Ciencias de la Computación
CC3001-2: Algoritmos y Estructuras de Datos
Auxiliar N◦4
Profesor: Patricio Poblete
Auxiliar: Camilo Gómez
P1. Programe en Java los siguientes métodos, considerando que se tiene la clase Nodo descrita a continuación:
Class Nodo {
public int valor;
public Nodo sgte;
}
public void insertar(Nodo nodo): Inserta el nodo al final de la lista.
public void insertarNsimo(Nodo nodo, int n): Inserta el nodo en la posición n
de la lista.
public void insertarOrdenado(Nodo nodo): Dada una lista ordenada, inserta el
nodo en la posición tal que la lista se mantenga ordenada.
public void ordenar(): Dada una lista desordenada, ordena sus elementos en orden
creciente.
public void removerDuplicados(): Dada una lista ordenada en orden creciente,
remueve los nodos que se repiten.
1
Universidad de Chile
Facultad de Cs. Físicas y Matemáticas
Departamento de Ciencias de la Computación
CC3001-2: Algoritmos y Estructuras de Datos
P2. Programe en Java los siguientes métodos, considerando que se tiene la clase NodoDoble, que es una lista enlazada doble, donde cada nodo tiene referencias al nodo siguiente y
al anterior:
Class NodoDoble {
public int valor;
public Nodo sgte;
public Nodo anterior;
}
public void insertar(Nodo nodo): Inserta el nodo al final de la lista.
public void remover(Nodo nodo): Remueve el nodo de la lista. Si no está, no hace
nada.
public void recorrerAdelante(): Recorre la lista hacia adelante, imprimiendo el
valor de cada nodo.
public void recorrerAtras(): Ídem al anterior, pero hacia atrás.
P3. Problema de Josephus.
Hay n personas en un círculo esperando ser ejecutadas. Después que se ejecuta a la primera
persona, se cuenta k-1 personas en el círculo (en orden) y la k-ésima persona es ejecutada
nuevamente. La ejecución continua de la misma manera en el círculo, haciendo que el número
de personas vaya disminuyendo en cada ejecución. Esto sucede hasta que queda solo una
persona, y ésta es salvada.
El objetivo es elegir el lugar correcto, dados n y k.
2
Descargar