我試圖在Javascript中爲23名學生做一個生日悖論事件,它應該給我51%的平均概率,但它總是給我67%左右的數字。這裏的代碼: var pers = [];
var D = 0;
for (var i = 0; i < 10000; i++) {
for (var k = 0; k < 23; k++) {
pers.push(Math.floor((Math.ra
我的教授給我們這個幻燈片,而說明哈希碰撞概率:當我擡起頭具有的「生日悖論」生日相同的兩個人的概率 ,我就Wikipedia and other sources的概率發現在n = 10時應該是11.7。實際上,我用他的公式計算出來的每個價值都不同於教授的幻燈片。 所以我的問題是:當他問「在發生碰撞之前我們可以向我們的桌子散列多少學生」,這與計算任何兩名學生有相同生日的概率有什麼不同? 如果是這樣,是
我想模擬兩個以上的學生在一個房間裏有n個人同時生日的概率。目前,我認爲我的代碼是分開工作正常,雖然我最初只是運行的第一行代碼來選擇我的N值,然後運行該代碼的其餘部分(見下文) n = as.integer(readline(prompt = "Enter the number of students in a room:"))
sims = 10000
x = numeric(sims)
這是我在Java上的第二天。我在生日悖論中遇到了一個有趣的問題。 生成隨機生日。 用隨機生日創建一個人。 建立一個函數來檢查兩個人是否有相同的生日。 創建一個給定人數的房間n。 建立一個函數來檢查房間裏至少有兩個人是否有相同的生日。 但是,我堅持如何與'人'創建一個'房間',然後比較人的生日。 有誰知道如何做到這一點? 謝謝你的努力和時間! :) class Person {
int a
只是想了解生日悖論。 使用下面的代碼,我發現我需要平均12個樣本以獲得生日相撞。 不明白爲什麼它遠低於正常 23人得到一次生日碰撞的一半機會。 即使我使用PyCrypto的StrongRandom,結果也不會改變。 from random import randint
from Crypto.Random.random import StrongRandom
EXPERIMENTS_NUM =
代碼是運行模擬來找出n個人共享相同生日的概率。 我將隨機分配的生日與一組日期進行了比較。對於任何超過1個等值的日期,我在分子中加1。 但是,答案出現錯誤的代碼。我不知道爲什麼。 import java.util.Scanner;
public class birthday {
public static void main (String[] args) {
Scanner inp = n