36
 правок
Изменения
м
→Псевдокод
        s += '#'
        int alpha_size = 255
        //''На нулевом этапе сортируем подстроки длинной длиной 1''
        '''vector''' count(max(alpha_size, s.length()))
        //''count -- массив для сортировки подсчетом''
        '''fill'''(count, 0)
        '''for''' ('''int''' i = 0; i < s.length(); ++i)
            ++count[ord(s[i])]
        '''calc_positions'''(count)
        '''vector''' suffs(s.length())
        '''for''' ('''int''' i = 0; i < s.length(); ++i)
            suffs[count[ord(s[i])]++] = i
        //''подстроки длинной длиной 1 отсортированы''
        //''разобьем их на классы эквивалентности''
        '''vector'''<'''int'''> classes(s.length())
