正则分析程序实现

正则分析程序实现

ID:8391654

大小:71.00 KB

页数:17页

时间:2018-03-24

正则分析程序实现_第1页
正则分析程序实现_第2页
正则分析程序实现_第3页
正则分析程序实现_第4页
正则分析程序实现_第5页
资源描述:

《正则分析程序实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、#include#include#includeusingnamespacestd;intNFASNum;//NFA状态数vectorrec;stringstr2;intAccept[100]={0};//边类classEdge{public:intnum;intpos;charweight;Edge*next;public:Edge(){num=-1;pos=-1;next=NULL;}Edge(intNum,intPos,charch){num=Num;pos=Pos;weight

2、=ch;next=NULL;}};//顶点类classVertex{public:intvnum;Vertex*next;Edge*out;public:Vertex(){vnum=-1;next=NULL;out=NULL;}Vertex(intnum){vnum=num;next=NULL;out=NULL;}};//邻接表类classAdjacentT{private:Vertex*Start;intNumV;intNumE;public:AdjacentT(){NumV=1;NumE=0;Start=newVertex();}~Adjac

3、entT(){Vertex*V;Edge*E;V=Start;for(inti=0;iout;while(E){V->out=E->next;deleteE;E=V->out;}V=V->next;}}intGetval(intpos)//得到顶点值{Vertex*V=Start;for(inti=0;inext;}returnV->vnum;}intGetpos(intval)//得到顶点位置{Vertex*V=Start;inttemp=-1;for(inti=0;i

4、++){if(V->vnum==val){temp=i;break;}V=V->next;}returntemp;}charGetwei_pos(intv1,intv2)//得到边权值{charch='$';Vertex*V=Start;for(inti=0;inext;}Edge*E=V->out;while(E){if(E->pos==v2){ch=E->weight;break;}else{E=E->next;}}returnch;}charGetwei_val(intval1,intval2){returnGe

5、twei_pos(Getpos(val1),Getpos(val2));}intSetval(intval,intpos)//赋予顶点值{Vertex*V=Start;for(inti=0;inext;}V->vnum=val;return0;}intInsertver(intval)//插入顶点值{intpos;pos=Getpos(val);Vertex*V=Start;while(V->next){V=V->next;}Vertex*NewV=newVertex(val);V->next=NewV;NumV++

6、;return0;}intInsertedge_pos(intv1,intv2,charwei)//两定点之间插入边{Vertex*V=Start;for(inti=0;inext;}Edge*E;E=V->out;Edge*NewE=newEdge(Getval(v2),v2,wei);if(!E){V->out=NewE;NumE++;return0;}while((E->pos!=v2)&&(E->next)){E=E->next;}if(!E->next){E->next=NewE;NumE++;}return

7、0;}intInsertedge_val(intval1,intval2,charwei){intv1=Getpos(val1);intv2=Getpos(val2);Insertedge_pos(v1,v2,wei);return0;}intPrint_NFA()//输出NFA{Vertex*V=Start;Edge*E=newEdge();cout<<"状态边(权值)"<vnum<<"";E=V->out;if(E){while(E){cout<<""<num

8、<<"("<weight<<")";E=E->next;}}else{cout<<"ACC";}cout<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。