Канонический генератор

Опять же чистая проба пера. Алфавит символьный восмиразрядный. Кроме того, насчёт соответствия алгоритма каноническому я не уверен, потому что сильно не проверял. Если что-то не так, то я со временем поправлюсь.

Основные параметры :

FILENAME_TABLE имя файлa с созданой таблицей
FILENAME_STATUS файл с созданым списком состояний автомата
GR_COUNT число продукций (строк) в состоянии
*gr сама граматика
test_line проверочная строка

Работает всё просто тупо и совcем нелинейно (по времени). Едиственное светлое место есть в сравнении состояний конечного автомата - это сравнение хешируется.

Конфликт переноса и свёртки не решается (делается это впрочем одной строчкой).

Исходник: cannon.cpp

Hosted by uCoz