NAME
Sort::Key::LargeInt - sort large integers very fast
SYNOPSIS
use Sort::Key::LargeInt qw(largeintsort);
my @data = qw(+8970938740872304
-12
98_908_345_309_345_345_353_453_466_545_645_676_567
...);
my @sorted = largeintsort @data;
DESCRIPTION
This module extends the Sort::Key family of modules to support sorting strings containing integer numbers of arbitrary length (referred by this module as large-integers) numerically.
Large-integers must match the following regular expresion:
/^[+\-]?[\d_]*$/
FUNCTIONS
The functions that can be imported from this module are:
- largeintsort @data
-
returns the large-integer values in
@data
sorted. - rlargeintsort @data
-
returns the large-integer values in
@data
sorted in descending order. - largeintkeysort { CALC_KEY($_) } @data
-
returns the elements on
@array
sorted by the large-integer keys resulting from applying themCALC_KEY
. - rlargeintkeysort { CALC_KEY($_) } @data
-
is similar to
largeintkeysort
but sorts the elements in descending order. - largeintsort_inplace @data
- rlargeintsort_inplace @data
- largeintkeysort_inplace { CALC_KEY($_) } @data
- rlargeintkeysort_inplace { CALC_KEY($_) } @data
-
these functions are similar respectively to
largeintsort
,rlargeintsort
,largeintsortkey
andrlargeintsortkey
, but they sort the array@data
in place.
SEE ALSO
COPYRIGHT AND LICENSE
Copyright © 2009 by Salvador Fandiño
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.