Re[2]: Работа с календарями или графиками работ
От: pashzhel Россия  
Дата: 06.02.10 06:09
Оценка:
Здравствуйте, intr13, Вы писали:

I>>Также есть потребность в пересечении, вычитании и пересечении графиков работы.

I>Имелось ввиду: пересечение, вычитание и объединение графиков работы

3 секунды много или мало — зависит от количества работ. Если там 100500 млрд. работ то достаточно быстро ) если 10 работ то медленно )


Возможно тип данных поможет сменить если это еще не сделано, все сводится к пересечению отрезков.
Например если взять дискретность 1 секунда то получаем в год 31536000 сек , обычного Int32 хватит на 132 года, но лучше сразу Int64 ).
Возможно имеет смысл секунды не считать, только минуты или по 5 минут. Врятли кто-то планирвать будет дело на 2 минуты или планировать встречу на 12.32
поэтому дискретность бери из практики.


Потом нужно будет сделать проецирование этой цифры в привычный формат, с учетом 29 февраля и учет перевода времени + возможны какие-то специфики для экзотических культур.

Все расчеты по пересечению работ будут сводится к расчету пересечения отрезков, что должно быть достаточно быстро

то есть на входе у тебя список отрезков — после обработки снова список отрезков который может быть больше или равен по кол-ву исходному.

например 2 варианта

без пересечения
|----------| работа1 
                 |------------| работа 2  

на выходе :
|----------| работа1
                 |------------| работа 2


с пересечением
|----------| работа1 
     |------------| работа 2  

на выходе :
|--- | работа1
     |-----| работа 1+работа2
           |------| работа 2
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.