问题描述

【问题描述】

编写一个具有通配符?的模式匹配算法。?可以与任意一个字符匹配。
【输入形式】

输入主串s;

输入子串t;

输入比较起始位置pos。

【输出形式】

输出匹配结果:子串第一次出现的位置,若未找到,输出0。
【样例输入1】

there are many cats.

?re

1

【样例输出1】

3

【样例输入2】

thsdfiewnjf fsdfdsjewd

f??f

3

【样例输出2】

13

【样例说明】

?为英文状态符号。由于输入串中可能含有空格,请使用gets读入字符串。

【评分标准】

采用bf算法实现。

程序设计

#include <stdlib.h>
#include <stdio.h>
#define MAXSIZE 100
#define ERROR 0
#define OK 1
typedef struct{
    char *data;
    int length;
    int stringsize;
}SqString;
//串的初始化
int initString(SqString *s)
{
    s->data=(char *)malloc(sizeof(char)*MAXSIZE);
    s->length=0;

具有通配符?的模式匹配算法(BF)相关推荐

  1. [数据结构]模式匹配算法--KMP算法详解

    目录 一. 模式匹配 二. 模式匹配算法 1. 朴素模式匹配算法 2. KMP算法 1). KMP算法的优势 2). KMP算法的原理 3). next数组的构造 4). 利用next数组匹配的过程 ...

  2. 解析BF(普通串模式匹配算法)算法

    写在前面:博主是一位普普通通的19届双非软工在读生,平时最大的爱好就是听听歌,逛逛B站.博主很喜欢的一句话花开堪折直须折,莫待无花空折枝:博主的理解是头一次为人,就应该做自己想做的事,做自己不后悔的事 ...

  3. 【数据结构】字符串 模式匹配算法的理解与实现 Brute Force算法(BF算法)与KMP算法 (C与C++分别实现)

    #笔记整理 若不了解串的定义,可至: 串(string)的定义与表示 查看 串的模式匹配算法 求子串位置的定位函数 Index(S, P, pos) 求子串的定位操作通常称作串的模式匹配(其中子串P称 ...

  4. 串--串的定义,顺序、链式存储结构,BF、KMP模式匹配算法(C语言描述)

    此文章仅作为自己学习过程中的记录和总结,同时会有意地去用英文来做笔记,一些术语的英译不太准确,内容如有错漏也请多指教,谢谢! 一.串(String)的定义: 串(String):由零个或多个字符组成的 ...

  5. BF算法(暴力算法)--模式匹配算法

    模式匹配算法:是数据结构中字符串的一种基本运算,给定一个子串,要求在某个字符串中找出与该子串相同的所有子串,这就是模式匹配.用途:搜索引擎.拼写检查.语言翻译.数据压缩等. BF算法:         ...

  6. 数据结构——基于字符串模式匹配算法的病毒感染检测

    实验四 基于字符串模式匹配算法的病毒感染检测 [实验目的] 1.掌握字符串的顺序存储表示方法. 2.掌握字符串模式匹配BF算法和KMP算法的实现. [实验内容] 问题描述 医学研究者最近发现了某些新病 ...

  7. 数据结构---模式匹配算法

    ⼀.模式匹配的概念 模式匹配是数据结构中字符串的⼀种基本运算,给定⼀个⼦串,要求在某个字符串中找出该字串相同的所有⼦串,这就是模式匹配.其中原 字符串成为⽬标串,给定的⼦串为模式串. ⼆.常⽤的模式匹 ...

  8. 《数据结构》—— 串的模式匹配算法

    串的模式匹配 一.简单的模式匹配算法(BF算法) 二.KMP算法 一.简单的模式匹配算法(BF算法) 在实际应用中我们常常能用到类似串的模式匹配,也称子串的定位操作.例如单词查找,百度搜索都是串的模式 ...

  9. 字符串的模式匹配 (朴素模式匹配算法 ,KMP算法)

    字符串的模式匹配 寻找字符串p在字符串t中首次出现的起始位置 字符串的顺序存储 typedef struct {char str[MAXSIZE];int length; }seqstring; 朴素 ...

最新文章

  1. [DeeplearningAI笔记]序列模型2.3-2.5余弦相似度/嵌入矩阵/学习词嵌入
  2. go语言笔记——是c开发的 lex yacc进行词法和语法分析,go不支持函数和运算符重载,不支持类型继承,也不支持断言,还有泛型...
  3. 找出MySQL瓶颈的基准测试和剖析
  4. mysql 优惠卷表设计_这些年MySQL表设计踩过的坑!
  5. sso和oauth2.0的简单了解学习
  6. Linux命令Find实例
  7. python手势识别_Python|使用opencv进行简单的手势检测
  8. [Android] 修改ImageView的图片颜色
  9. Redis与Jedis排序
  10. yandexbot ip列表整理做俄罗斯市场的站长可以关注一下
  11. 【三维深度学习】点云上采样网络PU-Net 代码分析
  12. Golang 学习笔记(08)—— 文件操作
  13. python基础之元组定义进阶操作、字典定义进阶操作
  14. 在二叉树中有两个结点m和n,若m是n的祖先,则使用后序遍历可以找到从m到n的路径
  15. 批量复制文件并改成有顺序的文件名
  16. (转)windows身份验证登入数据库 iis 无法访问数据库
  17. hadoop 如何连beeline_impala为hadoop续命
  18. 计算机汇编语言教程pdf,汇编语言实践教程.pdf
  19. Data Lab 2(深入理解计算机系统)
  20. uniapp 微信授权 登陆

热门文章

  1. 机器学习-浙江大学研究生课程
  2. ZigBee常用器件
  3. 诺基亚2018换鸿蒙,2018年最后一次换机机会,诺基亚、小米、一加这几款机型不容错过...
  4. 海康视频监控二次开发基于B/S架构
  5. 自恢复保险丝PPTC
  6. PMP分享|​PMP学习——项目管理的提升
  7. 会计学04.会计科目与借贷记账法
  8. python 求 gamma 分布_Python stats.gamma方法代码示例
  9. nrm常用命令及nrm ls星号不显示问题解决
  10. dede织梦友情链接分类调用代码