On Mon, Oct 26, 2015 at 04:00:39AM -0700, begemot_sun wrote:
>
>
> Добрый день.
>
> Необходима структура наподобии map{} когда можно быстро (за время O(log n))
> поменять значение элемента по ключу (cчетчик), но также иметь возможность
> вывести весь список сортированный по значениям элементов как в прямом, так
> и в обратном порядке.
>
> Может есть какая реализация на github? А может это какой-то стандартная
> структура данных, которую можно погуглить и реализовать на Erlang ?
>
> Скажу, что кол-во элементов будет до 100-200 (и возможно я тут развожу
> оверинжиниринг и достаточно lists и сортировки по списку), но для меня
> задача представляет также и чисто академический интерес. Как реализовать
> такое оптимально при большем кол-ве элементов?
Если нужно считать top-k для streaming data, то можно посмотреть на
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.114.9563
https://github.com/dgryski/go-topk/blob/master/topk.go
>
> Сразу в голову приходит структура из 2-х gb_trees (maps), но может что уже
> придумали другого ?
>
> P.S. ETS не предлагать.
>
> Спасибо.
>
> --
> Вы получили это сообщение, поскольку подписаны на группу Erlang по-русски.
>
> Чтобы отменить подписку на эту группу и больше не получать от нее сообщения, отправьте письмо на электронный адрес
erlang-russia...@googlegroups.com.
> Чтобы добавлять сообщения в эту группу, отправьте письмо по адресу
erlang-...@googlegroups.com.
> Настройки подписки и доставки писем:
https://groups.google.com/d/optout.
--
Alexander Zhuravlev