Bem, C qsort
(por um) oferece suporte porque você fornece sua própria função de comparação. Sua função de comparação pode ser arbitrariamente complexa.
Mas isso é somente se esta é uma questão de programação (você perguntou sobre bibliotecas). Se é uma questão de gerenciador de arquivos para um sistema operacional, provavelmente faz pertencer a SuperUser (deixe-nos saber se este é o caso e vamos cutucá-lo para lá).