к сожалению, я не очень опытен в использовании случайных чисел в программировании, несмотря на использование одинаковых целых чисел в диапазоне.Поэтому у меня есть вопросы по этой теме.
Вопрос 1 (более конкретно):
Я ищу способ выбора элементов массива (динамический размер, ноизвестно) в соответствии с распределением вероятностей, аналогичным кривой «экспоненциальный спад» (http://en.wikipedia.org/wiki/Exponential_decay). Значение: Я хочу предпочесть выбрать первые элементы, а не другиеЯ хочу монотонную убывающую функцию (без увеличения до уменьшения, как во многих известных распределениях вероятностей, таких как гамма-распределение).
Может быть, геометрическое распределение - это то, что я мог бы использовать? Но тогда мне нужноответ на мой второй вопрос, касающийся масштабирования этого распределения по индексам массива.
Двойной метод предпочтения выбора последних элементов, а не первого, конечно, тоже был бы приемлем.
Вопрос 2 (более общий): Существует ли концепция в любой реализации, которая будет масштабировать меня для любого непрерывного случайного распределения to заданный диапазон массива (включая дискретизацию)?
Пример: использовать гауссово нормальное распределение, и результат всегда является допустимым индексом в некотором массиве (что означает: средние элементы предпочтительнее).
Может ли это ( текст ссылки ) быть чем-то вроде того, что я хочу использовать?
Платформа и библиотеки: Я программирую на C ++ и используюбиблиотека boost :: random на данный момент ( текст ссылки ), но я хочу использовать что-то вроде библиотеки gsl или другого Качественные библиотеки.
Еще одно пожелание: Я бы предпочел способ использования некоторых качественных библиотек, а не быстрых и грязных пользовательских функций.
Спасибо!