торможу...
- From
- Max Alekseyev (2:5015/60)
- To
- Alexey Cheglyakov
- Date
- 2002-07-19T17:52:02Z
- Area
- RU.ALGORITHMS
████ OS/2 Hi, Alexey !
Replying to a message of Alexey Cheglyakov to All:
AC> Есть массив из неизвестного к-ва строк. Нужно за один проход случайным
AC> образом выбрать одну строку. Вероятность выбора для всех строк
AC> одинаковая.
Запоминаешь в result первую строку. С приходом строки номер n, с вероятностью 1/n заменяешь result на эту строку. По достижению конца массива возвращаешь result.
AC> Усложнение задачи - для каждой строки имеется весовой коэфициент
AC> (целое число), повышающий вероятность выбора этой строки.
Тоже самое, только вероятность замены result на строку номер n равна w[n]/(w[1]+...+w[n]), где w[i] - вес i-ой строки.
Regards, °°
Max ~
--- FleetStreet 1.27.3.8
* Origin: (2:5015/60)