第1题:
●在字符串的模式匹配过程中,如果模式串的每个字符依次和主事中一个连续的字符序列相等,则称为匹配成功。如果不能在主串中找到与模式串相同的子串,则称为匹配失败。在布鲁特—福斯模式匹配算法(朴素的或基本的模式匹配)中,若主串和模式串的长度分别为n和m(且n远大于m),且恰好在主串末尾的m个字符处匹配成功,则在上述的模式匹配过程中,字符的比较次数最多为(57)。
(57) A. n*m
B. (n-m+1)*m
C. (n-m-1)*m
D. (n-m)*n
第2题:
求字符串T在字符串S中首次出现的位置的操作称为()。
A、串的模式匹配
B、求子串
C、求串的长度
D、串的连接
第3题:
正则表达式模块re的match()方法是从字符串的开始匹配特定模式,而search()方法是在整个字符串中寻找模式,这两个方法如果匹配成功则返回match对象,匹配失败则返回空值None。
此题为判断题(对,错)。
第4题:
●在KMP模式匹配算法中,需要求解模式串p的next函数值,其定义如下(其中,j为模式串中字符的序号)。对于模式串“abaabaca”,其next函数值序列为(57)。
(57)
A. 01111111
B.01122341
C.01234567
D.01122334
第5题:
第6题:
已知字符串S为“abaabaabacacaabaabcc”,模式串t为“abaabc”。采用KMP算法进行匹配,第一次出现“失配”(s[i]≠t[j])时,i=j=5,则下次开始匹配时,i和j的值分别是()。
A.i=1,j=0
B.i=5,j=0
C.i=5,j=2
D.i=6,j=2
第7题:
第8题:
在KMP算法中,已知模式串为ADABCADADA,请写出模式串的next数组值()
A.0,1,1,2,1,1,2,3,4,3
B.1,2,3,2,1,1,2,4,4,3
C.0,1,1,1,2,1,2,3,4,3
D.2,1,1,2,1,1,2,3,3,4
第9题:
当运用改进的模式匹配算法时,模式串P='ABAABCAC'的next函数值序列为(41)。
A.1222312
B.1122312
C.1122212
D.122312
第10题:
求字符串T在字符串S中首次出现的位置称为(42)。
A.串的模式匹配
B.求子串
C.求串的长度
D.串的连接