zz>От количества слогов время работы автомата не зависит. Но от них зависит сложность самого автомата, и время его построения. Впрочем, если просто есть сколько-то фиксированных слогов, то автомат получится несложным (хоть и развесистым, если слогов в наборе много), и построить его можно быстро.
Pzz>P.S. Насколько я понимаю, разбор слова на слоги для русского языка не сводится к разбиению слова на запчасти из списка запчастей.
грамматика и не нужна. есть подстроки, есть строка да.
построение автомата — с этим наверно regexp с jit неплохо справляется.
а вот самостоятельное построение вызывает сомнение, что будет прям быстрее
чем рекурсивный перебор с возвратом.
на каком-то этапе начнется колонирование цепочек, а это тоже затраты, аллокации и обход.
такой обход даст все варианты сразу, но если, нужен только первый совпавший?
+ комбинаторный взрыв там. ну для меня не актуально — строки короткие.
пример на пятом шаге:
лексемы: a, ab, b, bc, c
строка: aabbbcc
a a b b b c
a a b b bc
a ab b b b с
a ab b b bс
a a b b b c
Веру-ю-у! В авиацию, в научную революци-ю-у, в механизацию сельского хозяйства, в космос и невесомость! Веру-ю-у! Ибо это объективно-о! (Шукшин)