The dependence of the choice of an algorithm on the structure of the data to be processed-an ubiquitous phenomenon-is so profound in the case of sorting that sorting methods are generally classified into two categories, namely, sorting of arrays and sorting of (sequential) files.