Categorías
Algorithms

LeetCode – Salas de reuniones (Java)

Dada una serie de intervalos de tiempo de reunión que constan de horas de inicio y finalización [s1, e1], [s2, e2], …, determine si una persona podría asistir a todas las reuniones.

Por ejemplo,
Dado [ [0, 30], [5, 10], [15, 20] ],
falso retorno.

Solución Java

Si una persona puede asistir a todas las reuniones, no debe haber superposiciones entre las reuniones. Después de ordenar los intervalos, podemos comparar el final actual y el próximo comienzo.

public boolean canAttendMeetings(Interval[] intervals) {
    Arrays.sort(intervals, new Comparator<Interval>(){
        public int compare(Interval a, Interval b){
            return a.start-b.start;
        }
    });
 
    for(int i=0; i<intervals.length-1; i++){
        if(intervals[i].end>intervals[i+1].start){
            return false;
        }
    }
 
    return true;
}

  LeetCode - Buscar y reemplazar en cadena (Java)

Por Programación.Click

Más de 20 años programando en diferentes lenguajes de programación. Apasionado del code clean y el terminar lo que se empieza. ¿Programamos de verdad?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *