1ridipi1
Версия от 17:25, 21 июня 2012; PertrovSergey (обсуждение | вклад) (Новая страница: «<div style="background-color: #ABCDEF; font-size: 16px; font-weight: bold; color: #000000; text-align: center; padding: 4px; border-style: solid; border-width: 1p...»)
Эта статья находится в разработке!
Постановка задачи
Дан один станок на котором нужно выполнить
работ. Для каждой работы известны моменты времени, когда можно начинать её выполнять - и когда необходимо закончить её выполнение - . Время выполнения у всех работ одинаково и равно одному. Необходимо узнать, можно ли построить расписание для этого станка.Алгоритм
Идея алгоритма в том, чтобы из тех работ, которые уже можно выполнить, ставить в расписание ту у которой наименьшее
. Если эта работа уже просрочена, значит расписание построить нельзя.Пусть
- множество ещё не включенных в расписание работ, к выполнению которых уже можно преступить. Изначально пустое. Отсортируем работы по порядку их появления.Алгоритм
Добавить в Пусть и минимально Расписание составить невозможно Удалить из
Сложность алгоритма
если в качестве использовать структуру, которая позволяет поиск элемента с минимальным за .Литература
- Peter Brucker. «Scheduling Algorithms» — «Springer», 2006 г. — 379 стр. — ISBN 978-3-540-69515-8