У меня мысли такие же, но мои попытки ускоренной реализации для движущихся точек, при готовом графе, ни к чему ускоренному не превели. Если много точек появляется-исчезает в небольшом «объёме», то одни и те же куски графа перестариваются много раз, при некоторый «плотности» обновлений, выгоднее просто пускать полное перестроение.
Вся прелесть Фортуна в том, что однажды обработав некоторую область, второй раз он ей не занимается. Поэтому и заинтересовал ваш опыт в этом вопросе, вот если бы был какой-то «локальный Фортун», который, при готовом графе и заданном списке удалённых-добавленных точек, умел интегрировать изменения в граф «за один проход», это было бы да.
Просто пройтись не получится, есть ограничения по интенсивности голосований, к тому же, ничего не мешает использовать для накрутки-открутки только новые посты-коменты, если задаться целью :)
Кстати, для отладки под Apache, скажем тех же PHP-модулей, есть полезный ключик для него — "-X". Помогло при отладке, когда с консоли PHP-модуль работал нормально, а под Apache упорно валился.
То что интервалы увеличиваются — безусловно полезное свойство, но слишком уж WM_TIMER чувствителен, достаточно просто мышкой водить туда-сюда и уже видно, как проседает частота его срабатывания.
И как этот способ позволит избавиться от плавающей частоты обновления, вроде об этом разговор шёл? Скажем, одна итерация стабильно отрабатывает за 10 мс — обновление 100 Гц, Sleep поспал не 10 мс, а 15 — 66 Гц и это ещё без полезной нагрузки, которая тоже может за разное время выполняться.
По-моему, надо выбирать такой квант для мультимедийного таймера, чтобы полезная нагрузка успевала отрабатывать, не успевает — выкидываем кадр и увеличиваем квант; всё время успеваем — уменьшаем квант.
www.youtube.com/watch?v=I6IQ_FOCE6I
Вся прелесть Фортуна в том, что однажды обработав некоторую область, второй раз он ей не занимается. Поэтому и заинтересовал ваш опыт в этом вопросе, вот если бы был какой-то «локальный Фортун», который, при готовом графе и заданном списке удалённых-добавленных точек, умел интегрировать изменения в граф «за один проход», это было бы да.
> Алгоритм Фортуна, также ускоряется при выполнении операций над уже обработанным набором.
В смысле, у вас есть инкрементальный вариант алгоритма Фортуна? В студию!
> Big number: 11! = 0x2611500
T < N
По-моему, надо выбирать такой квант для мультимедийного таймера, чтобы полезная нагрузка успевала отрабатывать, не успевает — выкидываем кадр и увеличиваем квант; всё время успеваем — уменьшаем квант.