Я работаю над приложением для планирования полетов (отказ от ответственности: это для проекта колледжа, поэтому не отвечайте на код, пожалуйста).Пожалуйста, прочитайте этот вопрос, прежде чем отвечать, так как он имеет много особенностей: (* 1001 *
Во-первых, некоторые терминологические проблемы:
У вас есть самолеты и полеты, и вы должны объединить их в пару.Для простоты мы будем предполагать, что самолет свободен, как только полет использует его ранее.
Полеты рассматриваются как задачи:
- Они имеют продолжительность
- У них есть зависимости
- У них есть ожидаемая дата / время начала
Самолеты можно рассматривать как ресурсы, которые будут использоваться задачами (или полетами, в нашей терминологии).
Для полетов нужен определенный тип самолета, например, для полета 200 нужен самолет типа B. Самолеты, очевидно, относятся к одному и только одному конкретному типу, например, самолет Airforce One типа C.
«Проект» - это совокупность всех рейсов авиакомпании за определенный период времени.
Требуемая функциональность:
Нахождение кратчайшей возможной продолжительностиуказанный проект
Самый ранний и самый поздний возможный старт для задачи (полета)
Критические задачи, основанные на предоставленных данных, завершеныс идентификаторами предыдущих задач.
Автоматически объединяет полеты и самолеты, чтобы все рейсы были в паре с самолетом.(Примечание: продолжительность полетов фиксирована)
Получите диаграмму Ганта с расписанием проектов, в которой все полеты начинаются как можно раньше, с графическим отображением всех ранее упомянутых данных (зависимости,информация о времени и т. д.)
Итак, возникает вопрос: как в мире я могу достичь этого?В частности:
- Мы обязаны использовать график.
- Что соответственно обозначают ребра и узлы графа?
- Требуется ли нам отбрасывать задачи для выполнения поставленных критических задач?
Если бы вы могли также порекомендовать нам некоторые алгоритмы, это было бы здорово.