ArgSort

Tri indirect d'une matrice ou d'un vecteur.

vector vector::Sort(
  func_name  compare_func=NULL // fonction de comparaison
  T          context             // paramètre de la fonction de tri personnalisé
   );
 
matrix matrix::Sort(
  func_name  compare_func=NULL   // fonction de comparaison
  T          context             // paramètre de la fonction de tri personnalisé
   );
 
matrix matrix::Sort(
  const int  axis,               // axe de tri
  func_name  compare_func=NULL   // fonction de comparaison
  T          context             // paramètre de la fonction de tri personnalisé
   );

Paramètres

axis

[dans]  L'axe selon lequel trier : 0 horizontal, 1 vertical.

func_name

[in]  Comparateur. Vous pouvez spécifier l'une des valeurs de l'énumération ENUM_SORT_MODE ou votre propre fonction de comparaison. Si aucune fonction n'est spécifiée, le tri croissant est utilisé.
 
Une fonction de comparaison personnalisée peut être de deux types :

  • int comparator(T x1,T x2)
  • int comparator(T x1,T x2,TContext context)

Ici, T est le type de matrice ou de vecteur, et TContex est le type de la variable 'context' qui est passée comme paramètre supplémentaire à la méthode Sort.

context

[in] Paramètre facultatif supplémentaire pouvant être passé à une fonction de tri personnalisée.

Valeur de Retour

Vecteur ou matrice avec les indices des éléments triés. Par exemple, le résultat [4,2,0,1,3] indique qu'il doit y avoir un élément avec l'index 4 en position zéro, un élément avec l'index 2 en première position, et ainsi de suite.