用朴素查找算法实现串的查找(男朋友算法)
来源:互联网 发布:雷锋源越狱软件 编辑:程序博客网 时间:2024/06/05 09:55
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h>//朴素查找算法(BF)俗称男朋友算法int BF(const char *str,const char *sub,int pos){ int lens = strlen(str); int lensub = strlen(sub); if(pos<0 || pos>=lens) { return -1; } int i = pos; int j = 0; while(i<lens && j <lensub) { if(str[i] == sub[j]) { i++; j++; } else//回退 { i = i-j+1; j = 0; } } if(j>=lensub) { return i-j; } else { return -1; }}int main(){ char *str="ababcabcdabcde"; char *sub="abcd"; printf("%d\n",BF(str,sub,3)); printf("%d\n",BF(str,sub,6)); printf("%d\n",BF(str,sub,10)); return 0;}
打印结果为:
5
9
-1
阅读全文
0 0
- 用朴素查找算法实现串的查找(男朋友算法)
- BF朴素查找算法(查找子串)
- 字符串的查找:朴素查找算法和KMP算法
- 朴素匹配算法-子字符串的查找
- 查找算法的实现
- KMP算法(相对于朴素查找算法的比较)
- [查找算法]--二分查找的Java实现
- 二分查找算法的实现
- 实现顺序查找的算法
- 实现二分查找的算法
- 实现分块查找的算法
- 折半查找算法的实现
- 二分查找算法的实现
- 折半查找算法的实现
- 二分查找算法的实现
- 二分查找算法的实现
- 实现顺序查找的算法
- 实现顺序查找的算法
- SpringMVC HandlerMethodArgumentResolver解读
- execScript调用其他页面方法并传值-ApiCloud学习笔记
- HDOJ HDU 1057 A New Growth Industry
- kmp算法初识
- Python3学习(26)--类的量身定制
- 用朴素查找算法实现串的查找(男朋友算法)
- 这个支付宝电脑端转账怎么还要5毛钱手续费呀?
- C#
- Lua 在VS上的环境配置(一)
- IE浏览器使用原生JS操作ajax无效
- JS预处理
- Frame切换-ApiCloud学习笔记
- 沉浸栏效果-ApiCloud学习笔记
- 上拉加载下拉刷新方法-ApiCloud学习笔记