数据l构W四章填I题?qing)参考答案[4]_跨考网
1Q下列算法实现求采用序l构存储的串s和串t的一个最长公共子丌Ӏ?/span>
E序Q?/span>aQ?/span>
PROCEDURE maxcomstr(VAR s,t : orderstring; VAR index,length : integer);
VAR i,j,k,length1:integer; con:boolean;
BEGIN
index :=0; length :=0; i :=1;
WHILE(i<=s.len) DO
[j:=1;
WHILE (j<=t.len) DO
[ IF (s[i]=t[j]) THEN
[ k:=1; length1:=1; con:=true;
WHILE con DO
IF (1)__THEN [length1:=length1+1;k:=k+1;] ELSE(2) _;
IF (length1>length) THEN [index:=i; length:=length1; ]
(3)____;
]
ELSE (4)____;
]
(5) ___;
]
END;
E序(b)
void maxcomstr(orderstring *s,*t; int index, length)
{int i,j,k,length1,con;
index=0;length=0;i=1;
while (i<=s.len)
{j=1;
while(j<=t.len)
{ if (s[i]= =t[j])
{ k=1;length1=1;con=1;
while(con)
if (1) _ { length1=length1+1;k=k+1; } else (2) __;
if (length1>length) { index=i; length=length1; }
(3)____;
}
else (4) ___;
}
(5) __
} }?a target="_blank">上v大学 2000 一?/span>2 Q?/span>10分)(j)?/span>
(tng) (tng) (tng) 【参考答案?/span>
(tng) (tng) (tng) 本题法采用序存储l构求串s和串t的最大公共子丌Ӏ串s?/span>i指针Q?/span>1<=i<=s.lenQ?/span>t串用j指针Q?/span>1<=j<=t.lenQ。算法思想是对每个iQ?/span>1<=i<=s.lenQ即E序中第一?/span>WHILE循环Q,来求?/span>i开始的q箋(hu)字符串与?/span>jQ?/span>1<=j<=t.lenQ即E序中第二个Q?/span>HILE循环Q开始的q箋(hu)字符串的最大匹配。程序中W三个(x(chng)内层Q的WHILE循环Q是?/span>s中某字符Q?/span>sQ?/span>iQ)(j)?/span>t中某字符Q?/span>tQ?/span>jQ)(j)相等Ӟ求出局部公共子丌Ӏ若该子串长度大于已求出的最长公共子Ԍ初始为0Q,则最长公共子串的长度要修攏V?/span>
(tng) (tng) (tng) E序Q?/span>aQ:(x)Q?/span>1Q(i+k<=s.lenQ?/span>AND(j+k<=t.len) AND(s[i+k]=t[j+k]) (tng) (tng)
(tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) //如果?/span>s?/span>t的长度内Q对应字W相{,则指?/span>k 后移Q加1Q?/span> (tng)
(tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Q?/span>2Q?/span>con:=false //s?/span>t对应字符不等时置标记退?/span>
(tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Q?/span>3Q?/span>j:=j+k //?/span>t串中Q从W?/span>j+k字符再与s[i]比较
(tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Q?/span>4Q?/span>j:=j+1 //t串取下一字符
(tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Q?/span>5Q?/span>iQ?/span>=i+1 //s串指?/span>i后移Q加1Q?/span>
(tng) (tng) (tng) E序Q?/span>aQ:(x)Q?/span>1Q?/span>i+k<=s.len && j+k<=t.len && s[i+k]==t[j+k] //所有注释同Q?/span>aQ?/span>
(tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) Q?/span>2Q?/span>con=0 (3) j+=k (4) j++ (5) i
2022考研初复试已l接q尾壎ͼ考研学子全面q入2023届备?/b>Q跨考ؓ(f)23考研的考生准备?0大课包全E准备、全q复?fn)备考计划、目标院校专业辅对{全真复试模拟练?fn)和全程针对性指|2023考研的小伙伴针也已经开始择校和复习(fn)?jin),跨考考研畅学5.0版本全新升Q无Z在校在家都可以更自如的完成你的考研复习(fn)Q?/a>暑假集训?/span>带来?jin)院校专业初步选择Q明方向;考研备考全q规划,核心(j)知识点入门;个性化制定备考方案,助你赢在赯U,早出发一点离成功更q一点!
点击右侧咨询?/strong>直接前往(xin)?jin)解更?/strong>
考研院校专业选择和考研复习(fn)计划 | |||
2023备考学?/td> | 2023U上U下随时学习(fn) | 34所自划UK校考研复试分数U汇?/td> | |
2022考研复试最全信息整?/a> | 全国各招生院校考研复试分数U汇?/a> | ||
2023全日制封闭训l?/span> | 全国各招生院校考研调剂信息汇?/a> | ||
2023考研先知 | 考研考试U目有哪些? | 如何正确看待考研分数U? | |
不同院校相同专业如何选择更适合自己?/a> | 从就业说考研如何择专业? | ||
手把手教你如何选专业? | 高校研究生教育各学科门类排行?/a> |
相关推荐
跨考考研评
班型 | 定向班型 | 开班时?/td> | 高定?/td> | 标准?/td> | 评介绍 | 咨询 |
U季集训 | 冲刺?/td> | 9.10-12.20 | 168000 | 24800?/td> | 班面授+专业??+专业译֮向辅?协议加强评(高定?+专属规划{疑(高定?+_化答?复试资源(高定?+复试译(高定?+复试指导(高定?+复试班主?v1服务(高定?+复试面授密训(高定?+复试1v1(高定? | |
2023集训畅学 | 非定向(政英?数政qQ?/td> | 每月20?/td> | 22800?协议? | 13800?/td> | 先行阶在U课E?基础阶在U课E?强化阶在U课E?真题阶在U课E?冲刺阶在U课E?专业NҎ(gu)一对一评+班主dE督学服?全程规划体系+全程试体系+全程_化答?择校择专业能力定位体p?全年关键环节指导体系+初试加强?初试专属服务+复试全科标准班服?/td> |