Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Evgenij Masherov                     2:5020/175.2   03 Mar 2003  14:14:42
 To : Nick Kovaliov
 Subject : Re: как их усреднять?
 -------------------------------------------------------------------------------- 
 
 Mon Mar 03 2003 12:05, Nick Kovaliov wrote to Evgenij Masherov:
 
  
  NK> О !!!
  NK> А если сделать две двоичных кучи -
  NK> одна те, которые меньше медианы,
  NK> вторая, которые больше ...
  NK> Hу всё, решили проблему :))
 
  NK> Итак -
 
  NK> ----
  NK> У нас уже есть эти две кучи
  NK> (H_less, H_bigger) и медиана.
 
  NK> Появляется новый эл-т -
  NK> посмотреть, больше он медианы, или меньше.
 
  NK> Если новый эл-т меньше медианы,
  NK> то вставляем его в H_less,
  NK> и извлекаем из H_less максимальный эл-т,
  NK> таким образом, корректируем медиану
  NK> В данном случае кол-во нечётное,
  NK> значит медиана должна быть равна этому эл-ту.
 
  NK> Если новый эл-т больше медианы,
  NK> то вставляем его в H_bigger,
  NK> и извлекаем из H_bigger минимальный эл-т,
  NK> и корректируем медиану.
  NK> ----
 
  NK> Hу как ? ;-)
  NK> Скорость гарантировано не хуже log2(N),
  NK> и накладные расходы не большие
  NK> по сравнению с копированием массива.
 
  NK> Hа асме легко оптимиздится, если нада.
 
 Hе решена задача... Hадо выбрасывать на каждом шаге не ближайший, а отстоящий
 на 116 позиций от вновь поступившего.
 Я бы делал с кольцевым буфером указателей на элементы отсортированного
 массива, для отслеживания, что выбрасываем. Вставкой вновь поступившего на
 место выброшенного и серией сдвигов до места. В худшем случае линейная
 сложность, хотя, сделав поиск места делением пополам, ограничиваем линейную по
 сложности часть только сдвигами (а вот тут можно и машиннозависимые приемчики
 показать...) Впрочем, это близко к уже рассматривавшемуся.
 
 Евгений Машеров АКА СанитарЖеня
 
 --- ifmail v.2.15dev5
  * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 как их усреднять?   Zahar Kiselev   27 Feb 2003 23:49:48 
 Re: как их усреднять?   Nick Kovaliov   28 Feb 2003 10:44:23 
 Re: как их усреднять?   Zahar Kiselev   28 Feb 2003 23:09:42 
 Re: как их усреднять?   Dmitry Statyvka   04 Mar 2003 16:07:49 
 Re: как их усреднять?   Zahar Kiselev   05 Mar 2003 00:15:58 
 Re: как их усреднять?   Dmitry Statyvka   06 Mar 2003 13:06:34 
 Re: как их усреднять?   Nick Kovaliov   06 Mar 2003 14:02:11 
 Re: как их усреднять?   Dmitry Statyvka   06 Mar 2003 15:32:48 
 Re: как их усреднять?   Nick Kovaliov   06 Mar 2003 16:44:30 
 как их усреднять?   Evgenij Masherov   28 Feb 2003 10:57:58 
 как их усреднять?   Zahar Kiselev   28 Feb 2003 21:33:28 
 как их усреднять?   Evgenij Masherov   01 Mar 2003 10:18:24 
 как их усреднять?   Zahar Kiselev   02 Mar 2003 01:05:54 
 Re: как их усреднять?   Nick Kovaliov   03 Mar 2003 11:12:46 
 Re: как их усреднять?   Nick Kovaliov   03 Mar 2003 11:08:43 
 Re: как их усреднять?   Evgenij Masherov   03 Mar 2003 12:26:49 
 Re: как их усреднять?   Nick Kovaliov   03 Mar 2003 13:05:22 
 Re: как их усреднять?   Evgenij Masherov   03 Mar 2003 14:14:42 
 Re: как их усреднять?   Nick Kovaliov   03 Mar 2003 15:10:43 
 Re: как их усреднять?   Nick Kovaliov   03 Mar 2003 15:26:05 
 Re: как их усреднять?   Zahar Kiselev   06 Mar 2003 02:18:24 
 Re: как их усреднять?   Nick Kovaliov   06 Mar 2003 10:05:20 
 Re: как их усреднять?   Zahar Kiselev   06 Mar 2003 17:06:50 
 Re: как их усреднять?   Dmitry Statyvka   06 Mar 2003 18:59:45 
 Re: как их усреднять?   Zahar Kiselev   06 Mar 2003 21:02:34 
 Re: как их усреднять?   Nick Kovaliov   07 Mar 2003 16:19:06 
 Re: как их усреднять?   Sergey Andrianov   01 Mar 2003 09:19:20 
 Re: как их усреднять?   Evgenij Masherov   03 Mar 2003 10:51:35 
 Re: как их усреднять?   Anatoly Saveliev   28 Feb 2003 09:23:31 
 Re: как их усреднять?   Sergey Andrianov   01 Mar 2003 00:22:06 
 как их усреднять?   Nickita A Startcev   02 Mar 2003 02:12:08 
 как их усреднять?   Zahar Kiselev   03 Mar 2003 05:20:48 
Архивное /ru.algorithms/330098cac4bc.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional