No es realmente necesario ordenar de acuerdo con el tiempo de inicio, ya que el problema es simétrico en la dirección del tiempo. Si invertimos el tiempo, el algoritmo de partición de intervalos debe ordenar el tiempo de finalización y trabajar desde el último tiempo de finalización hasta el primero. Eso también funcionaría.
Pero creo que lo que quieres decir es, ¿por qué no podemos ordenar el tiempo de finalización y luego procesar los intervalos del primero al último, como en la programación de intervalos? Y creo que la razón es que, para la partición de intervalos, necesita realizar un seguimiento de los procesos que se están ejecutando actualmente, de lo contrario, no sabe qué recursos están libres. Por lo tanto, debe saber cuándo comienzan a dar cuenta de eso.
Pero para la programación de intervalos, en realidad no necesita saber qué procesos se están ejecutando actualmente. Cuando finaliza un proceso, puede verificar fácilmente si el recurso habría estado disponible o no, y si lo fuera, entonces claramente debería haber procesado ese intervalo, para que podamos contarlo.
- ¿Cómo se pueden condensar hipergrafías construidas para problemas de flujo de red que implican minimizar el tiempo necesario para impulsar el flujo desde la fuente al sumidero?
- Los números ny (n + 2) son dos números que difieren en 2. ¿Cuál es el valor medio de estos dos números?
- ¿Cuáles son algunos de los mejores libros sobre Estructura de datos y Algoritmo en Java para principiantes?
- ¿El problema de las reinas N tiene al menos una solución por cada N> 3?
- ¿Cuáles son las diferencias entre DFS y BFS?
Al final, no puedo dar una razón mucho más fundamental que: es porque son dos problemas diferentes que requieren dos algoritmos diferentes.