Maison  >  Article  >  développement back-end  >  Comment classer efficacement les éléments d'un tableau en Python/NumPy sans double tri ?

Comment classer efficacement les éléments d'un tableau en Python/NumPy sans double tri ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-31 20:10:29710parcourir

How to Efficiently Rank Array Items in Python/NumPy without Double Sorting?

Classement optimal des éléments d'un tableau avec un tri minimal en Python/NumPy

Pour classer les nombres dans un tableau sans recourir au double tri coûteux en calcul processus, une approche plus efficace existe.

En utilisant la fonction argsort de NumPy, l'ordre des nombres peut être déterminé sans modifier le tableau d'origine :

<code class="python">order = array.argsort()</code>

Par la suite, argsort peut être appliqué au ordonner le tableau pour obtenir les classements :

<code class="python">ranks = order.argsort()</code>

Cette approche élimine le tri redondant du tableau d'origine, ce qui donne un algorithme de classement plus optimisé.

Il est crucial de noter que pour les tableaux multidimensionnels , il est essentiel de spécifier l'axe correct pour trier les arguments. Par exemple, pour classer un tableau 2D par lignes :

<code class="python">ranks = array.argsort(axis=1)</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn