Я хотел бы выбрать элемент списка, в котором каждый элемент имеет вес, как долго он был выбран последним.Случайный выбор, взвешенный по сравнению с недавними предыдущими выборами
Я мог бы сделать LRU (наименее недавно использованный) список с весовой функцией, основанной на позиции в очереди, которая была бы элегантной, за исключением того, что изначально все элементы должны быть взвешены одинаково.
Простое вычитание или разделение веса на определенную величину после его выбора не кажется интуитивно правильным. Есть ли лучший способ, возможно, использовать математическую концепцию, такую как логарифмы или инверсии? (Не мой конек)
atzz Я собираюсь попробовать ваш алгоритм и посмотреть, как он ведет себя благодаря! – hippietrail 2010-12-15 15:50:23