已知模式匹配的KMP算法中模式串T=”adabbadada”,其next函数的值依次为____。
查看答案
下面是基于定长顺序存储表示的串的朴素匹配算法,返回模式T在主串S中第pos个字符之后的位置。若不存在,则返回0。请你补充完成它。int Index(SString S, SString T, int pos){__________ ;j = 1;while (i<=S[0] &&_________){if (S[i]==T[j]{i++;j++; }// 继续比较后继字符else{ ____ ; j=1;}// 指针后退重新开始匹配}if (j>T[0])return i-T[0];elsereturn 0;}
下面是基于定长顺序存储表示的串的KMP算法,返回模式T在主串S中第pos个字符之后的位置。若不存在,则返回0。请你补充完成它。(注意:填空时不要随意加空格)int Index_KMP(SString S, SString T, int pos)//利用模式T的next函数求T在主串S中第pos个字符之后的位置的KMP算法。//其中,T非空,1≤pos≤StrLength(S)。{ int i = pos, j = 1;while(i <= S[0] && j <= T[0])if( ____ || S[i] == T[j])// 继续比较后继字符{++i;++j;}else // 模式向右移动____;if(j > T[0]) // 匹配成功return ____;elsereturn 0;}
数组A[0..4,-3..-1,5..7]中含有元素的个数( )。
A. 55
B. 45
C. 36
D. 16
假设以行序为主序存储二维数组A=array[1..100,1..100],设每个数据元素占2个字节的存储空间,数组的基地址为10,则LOC[5,5]=( )。
A. 808
B. 818
C. 1010
D. 1020