Вероятностная структура данных, основанная на переворачивании битов с вероятностью `1/2^x` для подсчета.Python

Программы на Python
Ответить
Anonymous
 Вероятностная структура данных, основанная на переворачивании битов с вероятностью `1/2^x` для подсчета.

Сообщение Anonymous »


Как работает эта структура данных и каково ее применение?

класс X: защита __init__(сам): self.x = 0 защита plus_one (я): self.x = self.x + переворот(self.x) защита get(self): return 2**self.x #2 возведено в степень x Функция flip() — это случайная функция, которая возвращает 1 с вероятностью 1/2^x и 0 в противном случае.

Я подозреваю, что эта структура данных каким-то образом связана с алгоритмом вероятностного подсчета Р. Морриса.

В вопросе также упоминается, что это неравенство может быть полезным:
log(E[X]) >= E[log(X)]

где E обозначает ожидаемое значение.

Буду очень признателен за любую помощь или рекомендации.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»