Ver Mensaje Individual
  #5 (permalink)  
Antiguo 06/09/2010, 12:26
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 6 meses
Puntos: 306
Respuesta: entero aleatorio distribucion uniforme

genuine_carlosV2, no he entendido muy bien lo que quieres decir con que ya los tienes que tener seleccionados.

Ese algoritmo, no es para ordenar números, el tema de la ordenación es simplemente parte del algoritmo, si te fijas, en cada bucle puedes obtener un valor aleatorio. Si te interesase sólo obtener un valor cuando lo llames (sin obtener los 5 seguidos) tendrías que crear un array y un contador estático sin bucle, y en el caso de usar una lista, también tendrías que usar una lista estática.

El problema de usar el método contains() de listas, es que cada vez que vaya a buscar un número, hace una comprobación de cada elemento desde el primero hasta que llegue al duplicado (volviendo a repetir el proceso con un nuevo número aleatorio) o al final, y eso cada vez que quieras obtener un nuevo número. Ahora imagina que ya tienes 4 valores de los cinco posibles, la probabilidad dice que de cada cinco intentos que hagas, sólo uno te devolverá el número que te falta.

Evidentemente, para 5 números no lo notas, pero si estamos hablando de grandes números, el retardo es más que apreciable.