Foros del Web » Programando para Internet » PHP »

Crear una lista ordenada de elementos

Estas en el tema de Crear una lista ordenada de elementos en el foro de PHP en Foros del Web. Necesito un algoritmo que me cree una lista ordenada de varios elementos, seleccionándolos en función de un factor de prioridad y una variable aleatoria. El ...
  #1 (permalink)  
Antiguo 17/07/2012, 10:04
 
Fecha de Ingreso: julio-2011
Mensajes: 62
Antigüedad: 12 años, 8 meses
Puntos: 2
Sonrisa Crear una lista ordenada de elementos

Necesito un algoritmo que me cree una lista ordenada de varios elementos, seleccionándolos en función de un factor de prioridad y una variable aleatoria.

El factor de prioridad lo tienen todos los elementos, y pertenece al intervalo (0;1]. Es constante.

La variable aleatoria permite que, aunque el factor de prioridad de un elemento sea muy pequeño, también aparezca, aunque sea muy de vez en cuando; y aunque un elemento tenga el factor de prioridad muy alto, no aparezca siempre el primero.

Lo he estado pensando pero no doy con la solución.

Me interesa que cuanto mayor sea el factor de prioridad, mayor sea la frecuencia con la que sea seleccionado y aparezca en primer lugar.

CASO DE PRUEBA:
Elemento A: factor de prioridad = 2/3,
Elemento B: factor de prioridad = 1/3.

Pues quiero que el elemento A salga el primero el doble de veces que el elemento B tras varias iteraciones.

Muchísimas gracias de antemano
  #2 (permalink)  
Antiguo 17/07/2012, 13:43
 
Fecha de Ingreso: julio-2011
Mensajes: 62
Antigüedad: 12 años, 8 meses
Puntos: 2
Respuesta: Crear una lista ordenada de elementos

Por favor, ¿nadie puede ayudarme?

Aclaro que los elementos los tengo en una base de datos MySql en una tabla. Cada elemento tiene un campo llamado factorPrioridad.

Pretendo leerlos y guardarlos en un array de elementos con PHP para trabajar con ellos. Si alguien sabe como hacerlo directamente desde MySql mejor que mejor, así no ocupo arrays enormes con PHP.

Y claro, los elementos NO se pueden repetir en una misma lista.

Última edición por Onedy; 17/07/2012 a las 13:50
  #3 (permalink)  
Antiguo 20/07/2012, 08:43
Avatar de exitoso23487  
Fecha de Ingreso: enero-2009
Mensajes: 49
Antigüedad: 15 años, 3 meses
Puntos: 8
Respuesta: Crear una lista ordenada de elementos

Buenas amigo, porque no colocas algo de lo que tengas hecho ya y así poder ayudarte con mayor claridad.

Etiquetas: aleatoria, lista, ordenada, prioridad, algoritmos, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:50.