.\" Copyright (c) 1990 The Regents of the University of California.
.\" %sccs.include.redist.man%
.\" @(#)radixsort.3 5.1 (Berkeley) %G%
radixsort(u_char **base, int nmemb, u_char *table, u_char endbyte);
is a modified radix sort.
function sorts an array of
pointers to byte strings, the initial member of which is referenced
The byte strings may contain any values; the end of each string
is denoted by the user-specified value
The contents of the array are sorted in ascending order according
to the ASCII order of the byte strings they reference.
Applications may specify a sort order by providing the
must reference an array of UCHAR_MAX (the maximum byte size) bytes which
contains the sort weight of each byte.
The end-of-string byte must have a sort weight of 0.
More than one byte may have the same sort weight.
is useful for applications which wish to sort different characters
equally; for example, providing a table with the same weights
for A-Z as for a-z will result in a case-insensitive sort.
is stable, that is, if two elements compare as equal, their order in
the sorted array is unchanged.
is a variant of most-significant-byte radix sorting; see Knuth Vol. 3,
page 177, and 5.2.5, Ex. 10.
takes linear time relative to the number of bytes in the strings.
Upon successful completion 0 is returned.
Otherwise, \-1 is returned and the global variable
is set to indicate the error.
for any of the errors specified for the library routine