使用C语言实现串的匹配朴素算法(BF算法)
来源:互联网 发布:淘宝首页的广告位 编辑:程序博客网 时间:2024/04/30 01:33
使用C语言实现BF这种低效率的算法,代码还是比较简单的。
不过效率比较低下。
#include <stdio.h>#include <stdlib.h>#include <string.h>#define MAXSIZE 100#define MINSIZE 30int main(){ char parentString[MAXSIZE]; char sonString[MINSIZE]; printf("please input a parent string:\n"); scanf("%s", parentString); fflush(stdin); printf("please input a son string:\n"); scanf("%s", sonString); int pos, i, j, flag; i = j = flag = 0; while(i < strlen(parentString)) { pos = i; if(sonString[j] == parentString[i]) { i++; j++; while(j < strlen(sonString)) { if(sonString[j] != parentString[i]) break; i++; j++; } if(j == strlen(sonString)) flag = 1; } if(flag == 1) { printf("the position is %d\n", pos+1); break; } //开始下一轮的循环,对有一些变量进行初始化 i = ++pos; j = 0; if(i > strlen(parentString) - strlen(sonString)) { printf("no this son string\n"); break; } } getchar(); return 0;}
需要注意的是,这里的代码没有检测输入的字符串的大小,过于大的字符串会导致程序崩溃
1 0
- 使用C语言实现串的匹配朴素算法(BF算法)
- 1.BF 朴素的模式匹配算法
- BF算法C语言实现
- C语言实现BF算法
- 串的操作(一) BruteForce (BF)算法 朴素的模式匹配
- 字符串的匹配模式:朴素的模式匹配算法(BF算法)
- 朴素的模式匹配算法(C语言)
- 串的BF匹配算法
- KMP算法与朴素模式匹配算法(C语言)
- 串匹配-BF算法
- 【C语言】朴素字符串匹配算法及其实现
- 数据结构(c++) 串的匹配BF->KMP->BM算法
- 串的模式匹配(BF算法,KMP算法)
- 4.3串的模式匹配算法(BF算法)
- Java实现BF串匹配算法
- C语言实现串的匹配算法
- 串的模式匹配--BF算法
- 串的模式匹配之BF算法
- JZOJ3745
- 使用多任务学习方法进行人脸特征点和属性检测
- 单调递增子序列(二)-(二分)
- [蓝桥杯]-第100002(十万零二)个素数是多少
- 数据库连接池c++ (msyql) mysql connector c++ 的使用
- 使用C语言实现串的匹配朴素算法(BF算法)
- 计算公式库学习
- 输入一个数N,输出这个数中包含的所有的质数
- 警惕:低头族颈椎病的福音:瑜伽颈椎疗法
- 【JavaWeb】WEB下的excel批量导入功能
- leetcode268. Missing Number
- 102. Binary Tree Level Order Traversal & 107. Binary Tree Level Order Traversal II & 103. Binary Tre
- Abator —— IBatis 代码生成工具
- Java 使用记事本编写第一个java程序