Я думаю, что вы должны использовать токенизатор и заменить каждую строку целым числом. Тогда для часовых останется много целых чисел. Возможно, удобнее использовать большие целые числа в качестве стражей, а не маленькие. Для распечатки вы можете использовать любой символ Unicode, который вы хотите, и вы можете использовать один и тот же символ для всех них.
Реализуете ли вы Ямамото и Церковь? Если это так, взгляните на более новую литературу, прежде чем начать. Я рекомендую Abouelhoda и др. Расширенный суффиксный массив и Kim, Kim & Park, линеаризованные суффиксные деревья. А если вам нравится комбинаторика, посмотрите на: массивы Шюрмана, Клауса-Бернда, Суффикса в теории и на практике.
Кроме того, я рекомендую трехстороннюю радикальную сортировку, в отличие от специализированного алгоритма сортировки суффиксов. Вам нужен только алгоритм сортировки суффиксов в случае избыточности в вашем корпусе. Но эти избыточности не нужны и могут испортить вашу статистику.
А если сделать что-нибудь интересное, мне было бы интересно посмотреть
Дейл Гердеманн