web-dev-qa-db-fra.com

Quelle est la complexité de cette méthode de tri python?

J'ai une liste de listes et je les trie comme suit 

data=sorted(data, key=itemgetter(0))

Vous vous demandiez quelle est la complexité d'exécution de cette méthode python?

17
Read Q

Si itemgetter(0) est O(1) lorsqu'il est utilisé avec data, le tri est O(n log n) en moyenne et dans le pire des cas.

Pour plus d'informations sur la méthode de tri utilisée dans Python, voir Wikipedia .

22
NPE

sorted est comme sort, sauf que le premier construit une nouvelle liste triée à partir d'un iterable tandis que sort sort à la place. La principale différence sera la complexité de l'espace.

1
blackmath

C'est le Timsort, et Timsort est une sorte d'algorithme de tri adaptatif basé sur le tri par fusion et le tri par insertion, alors je pensais qu'il appartenait au tri de comparaison et c'est-à-dire , aucun tri de comparaison ne peut garantir une complexité temporelle. plus petit que lg (N!) ~ N log N.

0
lerner