in reply to Re^2: Sorting records on a single field
in thread Sorting records on a single field

I see that switching the opereands is better but I don't catch what you mean with "equal sorting keys do not keep their relative positions after the sort operation"... probably I miss something. Could you explain deeply that point? Thanks.

  • Comment on Re^3: Sorting records on a single field

Replies are listed 'Best First'.
Re^4: Sorting records on a single field
by salva (Canon) on Jan 21, 2010 at 11:28 UTC
    Sure! Let me do it with an example:
    my @data = qw(1a 1b 2a 2b); my @s1 = reverse sort { $a <=> $b } @data; my @s2 = sort { $b <=> $a } @data; print "@s1\n@s2\n";
    generates:
    2b 2a 1b 1a 2a 2b 1a 1b
    Note how in the second row, elements with the same sorting key (the numeric part) appear in the same order they had in @data while in the first row, corresponding to the reverse solution, they do not.