首页
登录
从业资格
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明
admin
2022-08-02
42
问题
阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。【说明】 计算两个字符串x和y的最长公共子串(Longest Common Substring)。 假设字符串x和字符串y的长度分别为m和n,用数组c的元素c
[j]记录x中前i个字符和y中前j个字符的最长公共子串的长度。c
[j]满足最优子结构,其递归定义为:
计算所有c
[j](0 ≤i ≤ m,0 ≤j ≤ n)的值,值最大的c
[j]即为字符串x和y的最长公共子串的长度。根据该长度即i和j,确定一个最长公共子串。【C代码】(1)常量和变量说明 x,y:长度分别为m和n的字符串 c
[j]:记录x中前i个字符和y中前j个字符的最长公共子串的长度 max:x和y的最长公共子串的长度 maxi, maXj:分别表示x和y的某个最长公共子串的最后一个字符在x和y中的位置(序号) (2)C程序#include < stdio.h>#include < string.h>int c[50][50];int maxi;int maxj;int lcs(char*x, int m, char *y, int n) { int i, j; int max= 0; maxi= 0; maxj = 0;for ( i=0;i < =m ; i++) c
[0] = 0;for (i =1;i < = n; i++) c[0]
=0;for (i =1;i < = m; i++) { for (j=1; j < = n; j++) { if ( (1) ) {c
[j] = c[i-1][j -1] + 1;if(max < c
[j]){ (2) ; maxi = i; maxj =j; }}else (3) ; } } return max;}voidprintLCS(int max, char *x) { int i= 0; if (max == 0) return; for ( (4) ; i < maxi; i++)printf("%c",x
);}void main( ){ char* x= "ABCADAB"; char*y= "BDCABA"; int max= 0; int m = strlen(x); int n = strlen(y); max=lcs(x,m,y,n); printLCS(max , x);}【问题1】(8分) 根据以上说明和C代码,填充C代码中的空(1)~(4)。【问题2】(4分) 根据题干说明和以上C代码,算法采用了 (5) 设计策略。 分析时间复杂度为 (6) (用O符号表示)。【问题3】(3分) 根据题干说明和以上C代码,输入字符串x= "ABCADAB’,'y="BDCABA",则输出为 (7) 。
选项
答案
解析
【问题1】(8分)答案:(1)x[i-1]= =y[j-1] (2)max=c
[j](3)c
[j]=0 (4)i=maxi-max【问题2】(4分)答案:动态规划、 O(m×n)或O(mn)【问题3】(3分)答案:AB根据题干和C代码,计算出下表的值。
最大值为2。在计算过程中,我们记录第一个最大值,即表中阴影部分元素,因此得到最长公共子串为AB。
转载请注明原文地址:https://tihaiku.com/congyezige/2407929.html
本试题收录于:
中级 软件设计师题库软件水平考试初中高级分类
中级 软件设计师
软件水平考试初中高级
相关试题推荐
在引入自动化测试工具以前,手工测试遇到的问题包括( )。 ①工作量和时间耗
在项目初始阶段,软件开发首先需要( )。A.理解要解决的问题 B.确定解决方
以下属于动态测试方法的是( )。A.代码审查 B.静态结构测试 C.路径覆
以下关于测试方法的叙述中,不正确的是()。A.根据被测代码是否可见分为白盒测试和
计算机采用分级存储体系的主要目的是为了解决( )的问题。A.主存容量不足 B
( )是蠕虫病毒。A.熊猫烧香 B.红色代码 C.冰河 D.爱虫病毒
( )不属于使用软件测试工具的目的。A.帮助测试寻找问题 B.协助问题的诊断
TCP是互联网中的( )协议,使用( )次握手协议建立连接。 问题1选项
使用软件测试工具的目的不包括( )。A.帮助测试寻找问题 B.协助问题的诊断
软件测试的对象不包括( )。A.软件代码 B.软件开发过程 C.文档 D
随机试题
Anironandsteelworks,withseveralsatellitefactories,______inthatcityno
Singaporeiswellknownasamulti-racial,multi-culturalandmulti-religiousna
不确定性分析基本方法包括()。A.盈亏平衡分析 B.敏感性分析 C.概
企业信息化的发展历经了基本MRP,闭环的MRP,MRP-II和ERP,
局麻病人发生晕厥,应迅速将其体位调整为:()A.头低位 B.头高位
Pandy试验中,与脑脊液中的蛋白质形成不溶性蛋白盐而出现白色沉淀的物质是A.饱
必须把教育摆在优先发展的战略地位思想的提出始自党的()。 A.十五大B.十
(2018年真题)根据《期货从业人员执业行为准则(修订)》的规定,期货从业人员在
下列关于差量分析法的说法中,不正确的是( )。A.差量分析法是对备选方案差额利润
李四是一家特种设备检验检测单位的检验检测人员,依据《特种设备安全法》的规定,下列
最新回复
(
0
)