【数据结构基础】串的模式匹配-BF算法
2017-04-25 19:31
369 查看
#include<stdio.h> #pragma warning(disable:4996)//兼容vs中使用scanf #define Maxsize 20 int StrIndex_BF(char *s, char *t) { int i = 1, 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]+ 1) { return (i - t[0]); } else { return -1; } } char* ReadStr(char *s1) { int i, length; scanf("%d\n", &length); s1[0] = length; for (i = 1; i <= s1[0]; i++) { s1[i] = getchar(); } s1[i] = '\0'; return s1; } int main(void) { char Str1[Maxsize], Str2[Maxsize], *p, *q; int index; p = ReadStr(Str1); q = ReadStr(Str2); index = StrIndex_BF(p, q); if (index == -1) { printf("Not Find"); } else { printf("%d\n", index); } return 0; }
相关文章推荐
- 【数据结构与算法】模式匹配——从BF算法到KMP算法(附完整源码)
- 【数据结构与算法】模式匹配——从BF算法到KMP算法(附完整源码)
- 数据结构——串的模式匹配算法
- 学点PYTHON基础的东东--数据结构,算法,设计模式---访问者模式
- 2、数据结构和设计模式(数据结构基础、字符串、设计模式与软件测试)
- 数据结构之串的KMP模式匹配算法的实现
- Java数据结构之字符串模式匹配算法---Brute-Force算法
- 数据结构8————串的BF匹配模式和KMP匹配模式
- 数据结构之串的模式匹配算法(KMP)
- 数据结构——串的朴素模式和KMP匹配算法
- 数据结构(11)--串的模式匹配算法之BF、KMP算法
- 数据结构实践——计数的模式匹配 .
- 数据结构20:KMP算法(快速模式匹配算法)详解
- 数据结构基础+STL--符号匹配
- 数据结构——串的朴素模式和KMP匹配算法
- 学点PYTHON基础的东东--数据结构,算法,设计模式---单向链表
- 数据结构之串的模式匹配(C语言实现)
- Java数据结构之字符串模式匹配算法---KMP算法
- 学点PYTHON基础的东东--数据结构,算法,设计模式---观察者模式
- 数据结构之字符串的模式匹配