- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验课程:算法分析与设计
实验名称:实验3 动态规划算法 (综合性/设计性)
实验目标:
(1)熟悉最长公共子序列问题的算法;
(2)初步掌握动态规划算法;
实验任务:
(1)任意输入两个序列X{……}和Y{……},找出X和Y的最长公共子序列。
实验设备及环境:
PC;C/C++的编程环境Visual C++。
实验主要步骤:
明确实验目标和具体任务;
理解实验所涉及的分治算法;
编写程序并实现分治算法;
设计实验数据并运行程序、记录运行的结果;
实验数据及运行结果、实验结果分析及结论:
若给定序列X={x1,x2,…,xm},则另一序列Z={z1,z2,…,zk},是X的子序列是指存在一个严格递增下标序列{i1,i2,…,ik}使得对于所有j=1,2,…,k有:zj=xij。例如,序列Z={B,C,D,B}是序列X={A,B,C,B,D,A,B}的子序列,相应的递增下标序列为{2,3,5,7}。
给定2个序列X和Y,当另一序列Z既是X的子序列又是Y的子序列时,称Z是序列X和Y的公共子序列。
给定2个序列X={x1,x2,…,xm}和Y={y1,y2,…,yn},找出X和Y的最长公共子序列。
#include?stdio.h#include?string.hvoid?LcsLength(char?*x,char?*y,int?m,int?n,int?c[][100],
int?b[][100])
{puts(x);puts(y);int?i,j;for(i=0;i=m;i++)?c[i][0]=0;?for(j=1;i=n;j++)?c[0][j]=0;?for(i=1;i=m;i++)?for(j=1;j=n;j++)?
{?if(x[i-1]==y[j-1])
?{?
c[i][j]=c[i-1][j-1]+1;????b[i][j]=0;? }?
else?if(c[i-1][j]=c[i][j-1])?
{?
c[i][j]=c[i-1][j];?b[i][j]=1;}
else
{?
c[i][j]=c[i][j-1];?b[i][j]=-1;?}
}}void?PrintLCS(int?b[][100],?char?*x,?int?i,?int?j)
{????if(i==0?||?j==0)???return;????if(b[i][j]==0)?
{????????PrintLCS(b,x,i-1,j-1);????????printf(%c,x[i-1]);??}???else?if(b[i][j]==1)??? PrintLCS(b,x,i-1,j);????else??????
PrintLCS(b,x,i,j-1);}
void?main()
{char?x[100]={CBDAB};char?y[100]={1CABA};int?c[100][100];int?b[100][100];int?m,n;m=strlen(x);n=strlen(y);?
LcsLength(x,y,m,n,c,b);?
printf(最长子序列为:);rintLCS(b,x,m,n);?
printf(\n);?
printf(最长子序列长度为:%d\n,c[m][n]);}
您可能关注的文档
- 第八单元单元测试.doc
- 第八单元数学广角.doc
- 第八单元数学广角——数与形.doc
- 第八单元第19课现代音乐和电影.doc
- 第八单元语文试卷3.doc
- 第八届古诗文大赛复习题4.doc
- 第八次实验要求(周四课堂).doc
- 第八章一元线性回归分析.doc
- 第八章实际问题与二元一次方程组当堂检测.doc
- 第八章微生物的生长及其控制答案.doc
- 7.5 三角形的内角和定理 第1课时 教学设计-2024—2025学年北师大版数学八年级上册.docx
- 7.1.1 碳原子的成键特点 教学设计 2023-2024学年高一下学期化学人教版(2019)必修第二册.docx
- 19 海滨小城(教学设计)2024-2025学年统编版语文三年级上册.docx
- 第14课 扩音系统的畅想(教学设计)2023-2024学年六年级下册信息技术浙教版.docx
- 人教版八年级全一册第四章 篮球:背后变向运球 教案.docx
- 第3节 群落的结构 教学设计-新人教.docx
- 探索植物茎的功能教学设计-教科版科学四年级下册.docx
- 第四单元真分数和假分数 教学设计-五年级下册数学人教版.docx
- 探索图形(教学设计)-2023-2024学年五年级下册数学人教版.docx
- 第5课 中国古代官员的选拔与管理 教学设计 --2023-2024学年高二历史统编版2019选择性必修1 国家制度与社会治理.docx
文档评论(0)