- 16
- 0
- 约2.91千字
- 约 9页
- 2017-02-07 发布于重庆
- 举报
不确定有限状态自动机的确定化
不确定有限状态自动机的确定化
【实验目的】
输入: 非确定有限(穷)状态自动机。
输出: 确定化的有限(穷)状态自动机。
【实验原理】
同一个字符串α可以由多条通路产生,而在实际应用中,作为描述控制过程的自动机,通常都是确定有限自动机DFA,因此这就需要将不确定有限自动机转换成等价的确定有限自动机,这个过程称为不确定有限自动机的确定化,即NFA确定化为DFA。
NFA确定化的实质是以原有状态集上的子集作为DFA上的一个状态,将原状态间的转换为该子集间的转换,从而把不确定有限自动机确定化。经过确定化后,状态数可能增加,而且可能出现一些等价状态,这时就需要简化。
【程序代码】
#includeiostream
#includestring
#includevector
using namespace std;
#define max 100
struct edge{
string first;//边的初始结点
string change;//边的条件
string last;//边的终点
};
int N;//NFA的边数
vectorint value;
string closure(string a,edge *b)
{
int i,j;
for(i=0;ia.length();i++)
{
for(j=0;jN;j++)
{
原创力文档

文档评论(0)