Pregunta

¿Alguien sabe el Big O de array_unique()?

No he pasado por la fuente, pero me imagino que buceará a través de cada valor y verifica para ver si está en la matriz que estaría O(n^2) ¿es esto correcto?

Gracias

¿Fue útil?

Solución

Es O(nlogn) ya que usa clasificación en lugar de tu O(n^2) exploración.

Tenga en cuenta que se conservan las claves. Array_unique () clasifica los valores tratados como cadena al principio, luego mantendrá la primera clave encontrada para cada valor e ignorará todas las claves siguientes. No significa que se mantendrá la clave del primer valor relacionado de la matriz no organizada.

Citado de http://php.net/manual/en/function.array-unique.php

EDITAR: Recuerde buscarlo en Google, verificar el manual, verificar las preguntas existentes y luego preguntarlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top