Построение по НКА эквивалентного ДКА, алгоритм Томпсона — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 1: Строка 1:
 +
[[Категория: Теория формальных языков]]
 
== Алгоритм Томпсона ==
 
== Алгоритм Томпсона ==
 
Данный алгоритм используется для преобразования НКА в ДКА.
 
Данный алгоритм используется для преобразования НКА в ДКА.

Версия 23:04, 30 сентября 2010

Алгоритм Томпсона

Данный алгоритм используется для преобразования НКА в ДКА. Для построения используются обход в ширину графа переходов. Псевдокод: <Цикл по всем состояниям>

  • <Для всех переходов по одинаковым символам>
    • <Объединить все состояния, куда они ведут в одно>
    • <Если такого состояния нет в новом автомате>
      • <Добавить>
    • <Иначе>
      • <Направить все переходы на него>

Так же для реализации можно использовать AVL-деревья