一般的模式匹配算法(求子串位置)
2015-08-23 09:29
288 查看
//一般的模式匹配算法 #include<stdio.h> int Index (char *s , char *t , int pos );//返回子串t在主串s中第pos个字符之后的位置(包括pos),不存在返回-1 ; int main (){ int p ; p = Index ("123451234" ,"1234" , 0); printf ("%d ",p); return 0; } int Index (char *s , char *t , int pos ){ char *c ; int i ,j; int s_l,t_l; for (i=0 , c = s ;*c ; i++,c++); s_l = i ; for (i=0 , c = t ;*c ; i++,c++); t_l = i ; if (s_l<t_l) return -1 ; i = pos ; j = 0 ; while (i<s_l && j <t_l){ if (s[i]==t[j]){ i++ ; j ++ ; }else { i = i-j+2 ; j = 0 ; } } if (j >= t_l) return i-t_l ; else return -1; }
相关文章推荐
- Deep learning:七(基础知识_2)
- Deep learning:六(regularized logistic回归练习)
- Deep learning:五(regularized线性回归练习)
- 从零开始学java之IO流 使用字节流好还是字符流好?
- 【操作系统、UNIX环境编程】进程间通信
- hdu 5417 Victor and Machine(简单数学题)
- Opencv显示创建Mat对象的七种方式
- Deep learning:四(logistic regression练习)
- Deep learning:三(Multivariance Linear Regression练习)
- 深入理解JavaScript系列(5):强大的原型和原型链
- C++做题
- Deep learning:二(linear regression练习)
- WebService(二)-->关于 WebService 的几个问题和重要术语及相关工具使用(多图)
- HDU 4686 Arc of Dream(递归矩阵加速)
- Deep learning:一(基础知识_1)
- 手写代码必备手册(C版) —— 读书笔记 1、字符串 API
- sort 与Qsort 排序
- Swift:UIKit中Demo(一)
- 数据词典和约定
- MySQL查询结果按某值排序