数据结构第四章考试题库含答案Word格式文档下载.docx

上传人:b****4 文档编号:13648874 上传时间:2022-10-12 格式:DOCX 页数:30 大小:48.07KB
下载 相关 举报
数据结构第四章考试题库含答案Word格式文档下载.docx_第1页
第1页 / 共30页
数据结构第四章考试题库含答案Word格式文档下载.docx_第2页
第2页 / 共30页
数据结构第四章考试题库含答案Word格式文档下载.docx_第3页
第3页 / 共30页
数据结构第四章考试题库含答案Word格式文档下载.docx_第4页
第4页 / 共30页
数据结构第四章考试题库含答案Word格式文档下载.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

数据结构第四章考试题库含答案Word格式文档下载.docx

《数据结构第四章考试题库含答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《数据结构第四章考试题库含答案Word格式文档下载.docx(30页珍藏版)》请在冰豆网上搜索。

数据结构第四章考试题库含答案Word格式文档下载.docx

C.(0,1,0,1,0,0,0,1,1)D.(0,1,0,1,0,1,0,1,1)

【北京邮电大学1999一、1(2分)】

7.模式串t=‘abcaabbcabcaabdab’,该模式串的next数组的值为(),nextval数组的值为()。

A.01112211123456712B.01112121123456112

C.01110013101100701D.01112231123456712

E.01100111011001701F.01102131011021701

【北京邮电大学1998二、3(2分)】

8.若串S=’software’,其子串的数目是()。

【西安电子科技大学2001应用一、2(2分)】

A.8B.37C.36D.9

9.设S为一个长度为n的字符串,其中的字符各不相同,则S中的互异的非平凡子串(非空且不同于S本身)的个数为()。

【中科院计算所1997】

A.2n-1B.n2C.(n2/2)+(n/2)D.(n2/2)+(n/2)-1E.(n2/2)-(n/2)-1F.其他情况

10.串的长度是指()

【北京工商大学2001、6(3分)】

A.串中所含不同字母的个数B.串中所含字符的个数

C.串中所含不同字符的个数D.串中所含非空格字符的个数

二、判断题

1.KMP算法的特点是在模式匹配时指示主串的指针不会变小。

【北京邮电大学2002一、4(1分)】

2.设模式串的长度为m,目标串的长度为n,当n≈m且处理只匹配一次的模式时,朴素的匹配(即子串定位函数)算法所花的时间代价可能会更为节省。

【长沙铁道学院1998一、1(1分)】

3.串是一种数据对象和操作都特殊的线性表。

【大连海事大学20011、L(1分)】

二、填空题

1.空格串是指__

(1)__,其长度等于___

(2)__。

【西安电子科技大学2001软件一、4(2分)】

2.组成串的数据元素只能是________。

【中山大学1998、5(1分)】

3.一个字符串中________称为该串的子串。

【华中理工大学2000一、3(1分)】

4.INDEX(‘DATASTRUCTURE’,‘STR’)=________。

【福州大学1998二、4(2分)】

5.设正文串长度为n,模式串长度为m,则串匹配的KMP算法的时间复杂度为________。

【重庆大学2000、4】

6.模式串P=‘abaabcac’的next函数值序列为________。

【西安电子科技大学2001软件一、6(2分)】

7.字符串’ababaaab’的nextval函数值为________。

【北京邮电大学2001二、4(2分)】

8.设T和P是两个给定的串,在T中寻找等于P的子串的过程称为__

(1)__,又称P为__

(2)__。

【西安电子科技大学1998二、5(16/6分)】

9.串是一种特殊的线性表,其特殊性表现在__

(1)__;

串的两种最基本的存储方式是__

(2)__、__(3)__;

两个串相等的充分必要条件是__(4)__。

【中国矿业大学2000一、3(4分)】

10.两个字符串相等的充分必要条件是_______。

【西安电子科技大学1999软件一、1(2分)】

11.知U=‘xyxyxyxxyxy’;

t=‘xxy’;

ASSIGN(S,U);

ASSIGN(V,SUBSTR(S,INDEX(s,t),LEN(t)+1));

ASSIGN(m,‘ww’)

求REPLACE(S,V,m)=________。

【东北大学1997一、1(5分)】

12.实现字符串拷贝的函数strcpy为:

voidstrcpy(char*s,char*t)/*copyttos*/

{while(________)

}【浙江大学1999一、5(3分)】

13.下列程序判断字符串s是否对称,对称则返回1,否则返回0;

如f("

abba"

)返回1,f("

abab"

)返回0;

intf(

(1)________)

{inti=0,j=0;

while(s[j])

(2)________;

for(j--;

i<

j&

&

s[i]==s[j];

i++,j--);

return((3)_______)

}【浙江大学1999一、6(3分)】

14.下列算法实现求采用顺序结构存储的串s和串t的一个最长公共子串。

程序(a)

PROCEDUREmaxcomstr(VARs,t:

orderstring;

VARindex,length:

integer);

VARi,j,k,length1:

integer;

con:

boolean;

BEGIN

index:

=0;

length:

i:

=1;

WHILE(i<

=s.len)DO

[j:

WHILE(j<

=t.len)DO

[IF(s[i]=t[j])THEN

[k:

length1:

=true;

WHILEconDO

IF

(1)__THEN[length1:

=length1+1;

k:

=k+1;

]ELSE

(2)_;

IF(length1>

length)THEN[index:

=i;

length:

=length1;

]

(3)____;

]

ELSE(4)____;

(5)___;

END;

程序(b)

voidmaxcomstr(orderstring*s,*t;

intindex,length)

{inti,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;

}

else(4)___;

(5)__

}}【上海大学2000、2(10分)】

15.完善算法:

求KMP算法中next数组。

PROCget_next(t:

string,VARnext:

ARRAY[1..t.len]OFinteger);

j:

k:

=

(1)__;

next[1]:

WHILEj<

t.lenDO

IFk=0ORt.ch[j]=t.ch[k]THENBEGINj:

=j+1;

next[j]:

=k;

END

ELSEk:

=

(2)___;

【中山大学1998、1(4分)】

16.下面函数index用于求t是否为s的子串,若是返回t第一次出现在s中的序号(从1开始计),否则返回0。

例如:

s=‘abcdefcdek’,t=‘cde’,则indse(s,t)=3,index(s,’aaa’)=0。

已知t,s的串长分别是mt,ms

FUNCindex(s,t,ms,mt);

i:

j:

WHILE(i<

ms)AND(j<

mt)DO

IFs[i]=t[j]THEN[

(1)__;

(2)__]

ELSE[(3)___;

(4)_]

IFj>

mtTHENreturn(5)____;

ELSEreturn(6)__

ENDF;

【南京理工大学1999三、2(6分)】

17.阅读下列程序说明和pascal程序,把应填入其中的()处的字句写在答题纸上。

程序说明:

本程序用于判别输入的字符串是否为如下形式的字符串:

W&

M$其中,子字符串M是子字符串W的字符反向排列,在此假定W不含有字符&

和字符$,字符&

用作W与M的分隔符,字符$用作字符串的输入结束符。

例如,对输入字符串ab&

ba$、11&

12$、ab&

dd$、&

$,程序将分别输出Ok.(是),No.(不是)。

程序

PROGRAMaccept(input,output);

CONSTmidch=’&

’;

endch=’$’;

VARan:

ch:

char;

PROCEDUREmatch(VARanswer:

boolean);

VARch1,ch2:

f:

BEGIN

read(ch1);

IFch1<

>

endch

THENIF

(1)__

THENBEGINmatch(f);

IFfTHENBEGINread(ch2);

answer:

=

(2)_ENDELSEanswer:

=false

END

ELSE(3)___

ELSE(4)___

writeln(‘EnterString:

’);

match(an);

IFanTHENBEGIN

(5)__IF(6)_THENwriteln(‘Ok.’)ELSEwriteln(‘No.’)

ELSEwriteln(‘No.’)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1