GroupSort
Funkcia %GroupSort
Popis
Funkcia vráti zoradené hodnoty vektora v rámci každej skupiny. Časové značky polohu vo vektore nemenia! Voliteľne podľa hodnôt zdrojového vektora usporiada aj hodnoty iného vektora.
Deklarácia
VECTOR %GroupSort(
VECTOR _values,
VECTOR _groups
BOOL _asc,
BOOL _invalidIsMax
[, VECTOR _auxValues]
)Parametre
_values | Zdrojové hodnoty. |
_groups | Skupiny zdrojových hodnôt. Vektor musí mať rovnakú dĺžku ako vektor zdrojových hodnôt. |
_asc | 0 - zostupné alebo 1 - vzostupné usporiadanie. |
_invalidIsMax | 0 - neplatná hodnota je najmenšia alebo 1 - neplatná hodnota je najväčšia. |
_auxValues | Lokálna premenná typu VECTOR. Hodnoty tejto premennej budú preusporiadané rovnako ako hodnoty vektora _values. |
Príklad
-- usporiada hodnoty podľa veľkosti v rámci každej skupiny
VECTOR _v, _g;
%CreateVector(_v, 6);
%CreateVector(_g, 6);
_v[1] := 10;
_g[1] := 1;
_v[2] := 9;
_g[2] := 1;
_v[3] := 8;
_g[3] := 1;
_v[4] := 5;
_g[4] := 2;
_v[5] := 4;
_g[5] := 2;
_v[6] := 3;
_g[6] := 2;
-- vrati: 8, 9, 10, 3, 4, 5
_v := %Sort(_v, _g, 1, 0);
RETURN _v;Súvisiace stránky: