En un primer momento, voy a dar un enlace al código: http://ideone.com/6k8R6
En mi Intel Core 2 Duo, PHP 5.4.6 resultado es:
usort: 7.8763520717621
quicksort: 2.9220938682556
(usort
es más lento que quicksort
)
Pero el resultado es Ideone:
usort: 0.0313699245453
quicksort: 0.0621209144592
(usort
es más rápido que quicksort
)
También he comprobado el código en la computadora de mi amigo (Intel Core i5, PHP 5.4.4), y usort
también fue más rápido.
Mi pregunta es: ¿por qué a veces el quicksort es más rápido que el usort y algunas veces usort es más rápido?PHP velocidad usort
6
A
Respuesta
1
Quicksort se considera uno de los algoritmos de clasificación más rápidos en datos sin clasificar, y el más lento en datos ya ordenados (o casi ordenados).
+0
El código era el mismo en cada computadora y funcionaba 'set ($ uzytkownik);' utilizado para establecer el array en el estado sin ordenar antes de cada clasificación (me disculpo por cualquier error gramatical, pero soy de Polonia y es bastante tarde para mí;)) –
Cuestiones relacionadas
- 1. php - usort o array_multisort?
- 2. PHP usort ordenando múltiples campos
- 3. función usort en una clase
- 4. Parámetros de la función de devolución de llamada USORT PHP
- 5. Python vs velocidad de PHP
- 6. Velocidad de PHP vs JavaScript?
- 7. ¿Aumenta la velocidad de PHP?
- 8. PHP incluye vs include_once (velocidad)
- 9. Java vs. Comparación de velocidad de PHP
- 10. Limite la velocidad de descarga usando PHP
- 11. PHP usort reordena matriz el valor de clasificación es el mismo para todos
- 12. ¿Cómo debo ordenar esta matriz por clave con el usort?
- 13. ¿Cómo detectar la velocidad de Internet en PHP?
- 14. PHP velocidad - Muchas Echos vs La construcción de una cadena
- 15. ¿Cómo puedo medir la velocidad del código escrito en PHP?
- 16. Scrum: productos inacabados y velocidad de velocidad
- 17. CLUbicación velocidad
- 18. Prueba de velocidad de PHP para la velocidad de conexión del usuario sin eco en la página actual
- 19. decimal vs velocidad doble
- 20. Marquee establecer velocidad
- 21. UART velocidad posiblemente incorrecta
- 22. velocidad (instancia de prueba)
- 23. Velocidad de C# listas
- 24. velocidad de [] .forEach.call (...
- 25. Velocidad de inserción Sql
- 26. Flujo WCF - Velocidad límite
- 27. CCMoveTo: velocidad de movimiento
- 28. Sproutcore vs Cappuccino velocidad
- 29. alta velocidad de rastreo
- 30. Obtener vínculo velocidad - Win32_PerfRawData_Tcpip_NetworkInterface
Sospecho que es porque está utilizando un conjunto de datos realmente pequeño en ideone y que ha implementado quicksort en PHP puro, mientras que usort es una función de biblioteca. –
Creo que esto se basa realmente en la CPU debido a la paralelización, recuerdo haber leído algo sobre esto en alguna parte ... mmm, creo que en realidad era wikipedia: http://en.wikipedia.org/wiki/Quicksort pero mi cabeza lastimaría a un agian para leer eso a través. – Sammaye
Para agregar a eso, su conjunto de datos consta de cuatro elementos. ¡Eso ni siquiera es suficiente para demostrar adecuadamente el quicksort! – duskwuff