Ayuda con Queue de array

Iniciado por Carlos Maslatón, 5 Septiembre 2021, 01:16 AM

0 Miembros y 1 Visitante están viendo este tema.

Carlos Maslatón

Hola a todos. Quería ver si alguien podía resolver el siguiente problema:

Se quiere implementar una central de turnos para una guardia.
Para ello se quiere guardar en una "Queue" los turnos que van sacando en
el día logrando así una cola.
● La "Queue" debe tener al menos un método add para agregar un
turno al final, un pop que te devuelva el primero y lo elimine de la
cola y un peek para poder revisar cual es el primero sin eliminarlo.

● La colección Array es la única que pueden usar de java.

Implementar todo lo necesario para que funcione el siguiente
programa de prueba y además agregar lo que consideren en las líneas
punteadas.
El programa de prueba agregando solamente código en las líneas
punteadas debe devolver la salida que se encuentra debajo.

Pistas:
T[] elements = (T[]) new Comparable[INITIAL_DIM];
Creación de un array de elementos genéricos comparables
Pueden usar en algún momento Arrays.sort(elements,fromIndex,toIndex);


public class TesterTP3 {
public static void main(String[] args) {
Queue<MedicalShifts> queueHospital = new QueueImplement<>();
queueHospital.add(new MedicalShifts("harry", 0));
queueHospital.add(new MedicalShifts("hermione", 3));
queueHospital.add(new MedicalShifts("ron", 1));
queueHospital.add(new MedicalShifts("luna", 5));
queueHospital.add(new MedicalShifts("voldemort", 8));
System.out.println(queueHospital.peek());
System.out.println(queueHospital.isEmpty());
try {
System.out.println(queueHospital.pop());
} catch (EmptyQueueException emptyQueue) {
System.out.println(emptyQueue.getMessage());
}
System.out.println(queueHospital.peek());
System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
queueHospital.add(new MedicalShifts("hagrid", 4));
for (MedicalShifts shifts : queueHospital) {
System.out.println(shifts);
}
System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
queueHospital.sort();
for (MedicalShifts shifts : queueHospital) {
System.out.println(shifts);
}
System.out.println("<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
System.out.println(queueHospital.min(........);
}
harry
false
harry
hermione
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
hermione
ron
luna
voldemort
hagrid
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
ron
hermione
hagrid
luna
voldemort
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
hagrid



K-YreX

Estoy dispuesto a ayudarte sólo por las referencias a HP pero... tienes que poner algo más de código, no voy a dártelo hecho...
No se hacen tareas. Agrega el código que tengas hecho aunque esté mal para poder ayudarte.

PD: Utiliza etiquetas de código GeSHi para el código tal que así:

[code=java]
Aquí pones tu código
[/code]

El resultado tiene que quedar tal que así:
Código (java) [Seleccionar]

System.out.println("Codigo entre etiquetas de codigo GeSHi");
Código (cpp) [Seleccionar]

cout << "Todos tenemos un defecto, un error en nuestro código" << endl;