A: i=1,j=0
B: i=5,j=0
C: i=5,j=2
D: i=6,j=2
举一反三
- 已知字符串S为"abaabaabacacaabaabcc",模式串T为"abaabc"。采用KMP算法进行匹配,第一次出现“失配”(S[i]!=s[j])时,i=j=5,则下次开始匹配时,i和j的值分别是( )
- 在KMP模式匹配中,用next数组存放模式串的部分匹配信息。当模式串位j与目标串位i比较时,两字符不相等,则i的位移方式是( )。 A: j不变 B: j=next[j] C: i不变 D: i=next[j]
- 在KMP模式匹配中,用next数组存放模式串的部分匹配信息。当模式串位j与目标串位i比较时,两字符不相等,则j的位移方式是( )。 A: j=next[j] B: j不变 C: i=next[j] D: i不变
- 在KMP模式匹配中,用next数组存放模式串的部分匹配信息。当模式串位j与主串位i比较时,两字符不相等,则j的位移方式是( )。 A: i=next[j] B: i不变 C: j不变 D: j=next[j]
- 在KMP模式匹配中用next数组存放模式串的部分匹配信息,当模式串位j与目标串位比较时两字符不相等,则i的位移方式是 A: i=next[j] B: i不变 C: i=0 D: i=i-j+1
内容
- 0
在字符串匹配的BF算法中,i,j分别表示主串与子串的进行比较的字符的下标,初始时,i=,0,j=0,当主串位i与模式串位j比较成功时,主串和子串的位移公式是
- 1
在BF算法中,当主串与子串中有字符不匹配,则需要修改主串的位置指针i和子串的位置指针j为 A: i=i-j+2; j=1; B: i=1; j=1; C: i=i-j+1; j=1; D: i=i-j2; j=1;
- 2
以下哪些程序代码能够编译通过? A: int i=0;if(i) { System.out.println("Hello");} B: boolean b1=true;boolean b2=true;if(b1==b2) { System.out.println("So true");} C: int i=1;int j=2;if(i==1|| j==i) System.out.println("OK"); D: int i=1;int j=2;if(i==1 &| j==2) System.out.println("OK");
- 3
下面程序的运行结果是。 int main() {int a[5][5],i,j,n=1; for(i=0;i<5;i++) for(j=0;j<5;j++) a[i][j]=n++; for(i=0;i<5;i++) {for(j=0;j<=i;j++) printf("%4d",a[i][j]); printf("\n"); }}
- 4
下列代码段inti=1,j=10;do{???if(i++>--j)continue;}while(i<5);执行完毕后,i和j的值分别是()。 A: i=6?j=5 B: i=5?j=5 C: i=6?j=4 D: i=5?j=6