人工智能-合一算法(C++).docx

人工智能-合一算法(C++).docx

ID:58225866

大小:97.64 KB

页数:5页

时间:2020-04-29

人工智能-合一算法(C++).docx_第1页
人工智能-合一算法(C++).docx_第2页
人工智能-合一算法(C++).docx_第3页
人工智能-合一算法(C++).docx_第4页
人工智能-合一算法(C++).docx_第5页
资源描述:

《人工智能-合一算法(C++).docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、人工智能第1次作业一般合一算法(C++实现)姓名:佟学号:班级:12计本非师学院:信息学院一、简单程序如下#include#include#includeusingnamespacestd;intiC=0;//标记公式集中括号匹配数classSyncretism{private:structTransform{//一个代换(差异集)stringt_f1;stringt_f2;};public:boolIssyn(stringf1,stringf

2、2,vector&t);//是否能合一Transformdifferent(conststringf1,conststringf2)//求差异集{inti=0;Transformt;while(f1.at(i)==f2.at(i))i++;intj1=i;while(j1

3、gth()-1&&f2.at(j2)!=',')j2++;if(j2-i==0)returnt;t.t_f2=f2.substr(i,j2-i);while(t.t_f1[j1-i-1]==t.t_f2[j2-i-1]){t.t_f1.erase(j1-1-i);t.t_f2.erase(j2-i-1);j1--;j2--;}returnt;}boolsame(conststringf1,conststringf2);//判断两个公式是否相同stringchange(stringf,Transf

4、ormt);//用代换q对公式f进行合一代换boollegal(Transform&t);//intvar(conststrings);//s中每个()内的子串是变量还是常量voidshow();//最终演示算法};boolSyncretism::Issyn(stringf1,stringf2,vector&lan){while(!same(f1,f2)){Transformt=different(f1,f2);boolflag=legal(t);if(!flag)retu

5、rnfalse;else{lan.push_back(t);//将t加入vectorlan中if(flag){f1=change(f1,lan.back());//用lan的最后一个元素代换f2=change(f2,lan.back());cout<<"变换后:"<

6、tstringf1,conststringf2){if(f1.compare(f2)==0)returntrue;elsereturnfalse;}stringSyncretism::change(stringf,Transformt){inti=f.find(t.t_f2);while(i

7、tism::legal(Transform&t){if(t.t_f1.length()==0

8、

9、t.t_f2.length==0)returnfalse;elseif(var(t.t_f1)==0

10、

11、var(t.t_f2)==0)returnfalse;elseif(var(t.t_f1)==1&&var(t.t_f2)==1&&t.t_f1.compare(t.t_f2)!=0)returnfalse;elseif(var(t.t_f1)==2){if(var(t.t_f2)==1){stri

12、ngtemp=t.t_f1;//变量常量交换位置t.t_f1=t.t_f2;t.t_f2=temp;}else{inti1=var(t.t_f2);i1=iC;iC=0;inti2=var(t.t_f1);i2=iC;if(i1

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

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

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