Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/11/2007, 08:16
Avatar de derkenuke
derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Optimización: Escoger un elemento aleatorio de un array no escogido ya

Hola.

Propongo un concursillo, quien gane se llevará una cervecilla . Consiste en lo siguiente:

Dado un array de n elementos de tipos no necesariamente iguales, mediante una función f() devolver un elemento aleatorio de ese array. En sucesivas llamadas a esta función se deberá devolver también elementos aleatorios de este array, sin poderse devolver los mismos elementos. Es decir, una vez devuelto un elemento, ya no lo podremos obtener otra vez. Cuando no queden elementos que no hayan sido devueltos, la función debe devolver un false.

Se trata de resolver el ejercicio lo más eficientemente posible (que yo ya sé resolverlo a lo bestia ). Quien consiga en menos milisegundos devolver todos los elementos (hasta que se devuelva false) se lleva la birra


Dejo un array de base para que podamos trabajar todos sobre lo mismo (he hecho un popurrí de elementos...):
Código PHP:
var miArray = ['flgo'20'pgre'2213816'frkiysoj'9Infinity1114true'bstuhcv''bhatnck'717'nusfgcvd'1921'gmwp''incauo''hqu', { color"rojo"forma"cuadrado" }, 'kficoprn''qofxpdsn''ugdoebq''kxmhs'3'bfce''neduh'15'ueifchsj''kgdmj''ojk''vfqoyhli''buno'18'nrkmf'12623'hnvroupj''gkdtnhq'document.body10'qghsfpdr'241window.screenundefinednull0'ewgmq'NaN4, function () { }, 25window.onloadvoid(0), -Infinity]; 
No sé si será demasiado corto, creo que sí... bueno si nos vemos en dificultades para testear probaremos en ordenadores lentos o aumentaremos el array


¿Quién se apunta?
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.