Sonlu sayıda olası sonuç ile belirli bir dağılıma sahip olduğumuzu söylersek, bu dağılımdan rasgele bir sayı üretmek O (logn) değerinden daha hızlı olabilir, burada n sayı olası sonuçtur?Belirtilen ayrık dağıtımdan rasgele bir sayı nasıl oluşturulur?
O bunu yapmak için nasıl (logn):
- (rastgele sayı i için daha az ya da buna eşit olacak Dizi [i] = Olasılık) kümülatif olasılıklı bir dizi yapmak
- rasgele sayı oluşturmak tekdüze dağılım (k ile gösterelim)
- En küçük olanı bulun, böylece k < Array [i]. İkili arama kullanılarak yapılabilir.
- i rastgele sayıdır.
@Tomek, lütfen ödülü almayı unutmayın. – Kos
@Kos: Teşekkürler, ödül vermem gerektiğinin farkında değildim, bunun otomatik bir şey olduğunu düşündüm. –
Ödülün yarısı, AFAICR zamanında kendini ödüllendirmeyi ihmal ederseniz, en iyi cevapla otomatik olarak ödüllendirilir. – Kos