DFA最小化 下载本文

for(l=c;l<=t;l++) for(int q=0;q

for(i=0;i

} } } sort(s2.begin (),s2.end()); s2=shan(s2); if(flag>0) { if(s2!=s) { g[++t].group1=s2; b=t; g[++t].group1=jian(g[d].group1,g[b].group1); c++; } else { g[++t].group1=s2; c++; } } else { for(i=0;i

int main() {

freopen(\ int i,b,j; string ss;

edge *p=new edge[maxs]; edge *y=new edge[maxs]; jihe *g=new jihe[maxs]; input(p,g); while(d<=t) { if(t<50)//根据情况取值,使之不能再划分 Divide(g[d].group1,p,g);

//

d++; }

for(i=0;i

// cout<

g[x++].group2=g[i].group1;

cout<<\cout<<\划分子集为:\ for(i=0;i

for(i=0;i

if(p[i].prim==p[j].prim&&p[i].chan==p[j].chan&&p[i].res==p[j].res) { p[j].prim=\ p[j].chan=\ p[j].res=\ } for(i=0;i

}

// y[z].res=p[i].res; z++; } for(i=0;i

// cout<

for(i=0;i

return 0;