Fonctions de tri, de recherche et de comptage
1 h
Niveau 8
Introduction
Une variété de fonctions liées au tri sont disponibles dans NumPy. Ces fonctions de tri mettent en œuvre différents algorithmes de tri, chacun d'entre eux étant caractérisé par la vitesse d'exécution, les performances dans le pire des cas, l'espace de travail requis et la stabilité des algorithmes. Le tableau suivant présente la comparaison de trois algorithmes de tri.
genre | vitesse | pire cas | espace de travail | stable |
---|---|---|---|---|
quicksort | 1 | O(n^2) | 0 | non |
mergesort | 2 | O(n*log(n)) | ~n/2 | oui |
heapsort | 3 | O(n*log(n)) | 0 | non |
numpy.sort()
La fonction sort()
renvoie une copie triée du tableau d'entrée. Elle possède les paramètres suivants
numpy.sort(a, axis, kind, order)
Où,
Paramètre et description
- a - Tableau à trier
- axis - L'axe le long duquel le tableau doit être trié. S'il n'y en a pas, le tableau est aplati et trié sur le dernier axe.
- kind - La valeur par défaut est quicksort
- order - Si le tableau contient des champs, l'ordre des champs à trier.
Exemple
import numpy as np
a = np.array([[3,7],[9,1]])
print 'Our array is:'
print a
print '\n'
print 'Applying sort() function:'
print np.sort(a)
print '\n'
print 'Sort along axis 0:'
print np.sort(a, axis = 0)
print '\n'
# Order parameter in sort function
dt = np.dtype([('name', 'S10'),('age', int)])
a = np.array([("raju",21),("anil",25),("ravi", 17), ("amar",27)], dtype = dt)
print 'Our array is:'
print a
print '\n'
print 'Order by name:'
print np.sort(a, order = 'name')
Il produira le résultat suivant -
Our array is:
[
[3 7]
[9 1]
]
Applying sort() function:
[
[3 7]
[1 9]
]
Sort along axis 0:
[
[3 1]
[9 7]
]
Our array is:
[('raju', 21) ('anil', 25) ('ravi', 17) ('amar', 27)]
Order by name:
[('amar', 27) ('anil', 25) ('raju', 21) ('ravi', 17)]
Besoin d'aide ?
Rejoignez notre communauté officielle et ne restez plus seul à bloquer sur un problème !