|
|
问题在程序中用注释的形式给出了!
- status Index(SString S,SString T,int pos){ //返回子串T在主串S中第pos个字符后的位置,不存在返回0
- if(pos<0||pos>S[0])
- exit(1);
- int i=pos,j=1;
- while(i<S[0]&&j<T[0])
- if(S[i]==T[j]){
- i++;
- j++;
- }
- else{
- i=i-j+2;
- j=1;
- }
- if(j>T[0]) //这个条件判断有必要吗?什么时候会出现j>T[0]呢?
- return i-T[0];
- else return 0; //这句中的else是判断了一个什么条件?
- }
复制代码 |
|