Python shuffle algorithm performance

Me preguntaba acerca de la complejidad temporal de la función de shuffle en la biblioteca / módulo Python random . ¿Es O (n) o es menos que eso?

¿Existe un sitio web que muestre las complejidades temporales de las funciones que pertenecen a las bibliotecas de Python?

No puede barajar una lista de forma completamente aleatoria en menos de O (n).

La implementación de random.shuffle() utiliza el algoritmo shuffle de Fisher-Yates , que se ve fácilmente como O (n).