Я думаю, вы неправильно поняли свою домашнюю работу (не говоря уже о самих классах).Этот язык не является регулярным .Это означает, что вы не можете создать DFA для него.
Подумайте об этом: когда вы проходите цикл через a
, вы нигде не держите количество выполненных вами операцийштат.У вас нет возможности узнать, сколько раз прочитать b
.
Однако это можно сделать с помощью контекстно-свободной грамматики, подобной этой:
S->aSb|ab