为DFA.java文件中的DFA类实现成员函数boolean recognizeString(int move[][], int accept_state[], String word). 函数的参数和功能如下.
函数名:boolean recognizeString(int move[][], int accept_state[], String word)
功能:如果word被move和accept_state所代表的DFA识别,则返回true,否则返回false.
参数说明:
1)move[][]是状态迁移函数,move的每一行代表一个状态,每一列代表一个输入符号,第0列代表’a’,第1列代表’b’,……,依此类推. 例如:move ={{1,0}, {1,2}, …},
则表示此DFA在状态0时,当输入为’a’时,迁移到状态1,当输入为’b’时迁移到状态0;而DFA在状态1时,当输入为’a’时,迁移到状态1,当输入为’b’时迁移到状态2.
默认状态0是DFA的初始状态.
2)accept_state[]是接受状态的集合,如accept_state[] = {2, 3},则表示状态2和状态3是接受状态.
3)word是待识别的字符串.
测试用例:
4 2
1 0
1 2
1 3
1 0
3
aaabb
abbab
abbaaabb
abbb
#
1 3
0 0 0
0
cacba
#
0 0
测试结果:
YES
NO
YES
NO
YES
完成了所有测试用例,测试结果正确.s