ArgSort

Ordinamento indiretto di matrice o vettore.

vector vector::Sort(
  func_name  compare_func=NULL // funzione di confronto
  T          context             // parametro per la funzione di ordinamento personalizzata
   );
 
matrix matrix::Sort(
  func_name  compare_func=NULL   // funzione di confronto
  T          context             // parametro per la funzione di ordinamento personalizzata
   );
 
matrix matrix::Sort(
  const int  axis,               // asse per l'ordinamento
  func_name  compare_func=NULL   // funzione di confronto
  T          context             // parametro per la funzione di ordinamento personalizzata
   );

Parametri

axis

[in] L'asse lungo il quale ordinare: 0 è orizzontale, 1 è verticale.

func_name

[in] Comparatore. È possibile specificare uno dei valori dell'enumerazione ENUM_SORT_MODE o della propria funzione di confronto. Se non viene specificata alcuna funzione, viene utilizzato l'ordinamento ascendente.
 
Una funzione di confronto personalizzata può essere di due tipi:

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

Qui T è il tipo di matrice o vettore, e TContex è il tipo della variabile 'context' che viene passata come parametro aggiuntivo al metodo Sort.

context

[in] Parametro opzionale aggiuntivo che può essere passato ad una funzione di ordinamento personalizzata.

Valore Restituito

Vettore o matrice con gli indici degli elementi ordinati. Per esempio, il risultato [4,2,0,1,3] indica che ci dovrebbe essere un elemento con indice 4 nella posizione zero, un elemento con indice 2 nella prima posizione, e così via.