¿Cuál sería la forma más rápida de generar una gran cantidad de bits (pseudo) aleatorios? Cada bit debe ser independiente y ser cero o uno con la misma probabilidad. Yo, obviamente, podría hacer alguna variación enforma más rápida de generar bits aleatorios
randbit=rand()%2;
pero siento que debe haber una manera más rápida, generando varios bits aleatorios de cada llamada al generador de números aleatorios. Idealmente me gustaría obtener un int o un char donde cada bit es aleatorio e independiente, pero también son posibles otras soluciones.
La aplicación no es de naturaleza criptográfica, por lo que la aleatoriedad fuerte no es un factor importante, mientras que la velocidad y la distribución correcta es importante.
¿Qué distribución estás buscando? Y qué exigente eres sobre la corrección de la distribución. Si realmente quiere P [x] = 1/n para los números x en el intervalo [1..n], entonces aún necesita un buen rng, incluso si su aplicación no es crypto. – AnnaR
¿Qué tal algo como '((int) rand * rand)% 2'? No se garantiza que – C4u