#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
int piaoshu(char *s,char *p)
{
int i,j;
//间距不断增大
for(i=0;i<strlen(s)-strlen(p)+1;i++)
{
//进行匹配
for(j=0;j<strlen(p);j++)
{
if(s[i+j]!=p[j])
{
break;
}
}
//匹配成功返回间距
if(j==strlen(p))
{
return i;
}
}
return -1;
}
int main()
{
char s[100];
char p[100];
char *str1,*str2;
while(scanf("%s %s",s,p)!=EOF)
{
if(strlen(s)==0||strlen(p)==0) break;
if(strlen(s)>strlen(p))
{
str1=s;
str2=p;
}
else
{
str1=p;
str2=s;
}
//进行朴素匹配
int result=piaoshu(str1,str2);
printf("position: %d \n",result);
}
system("pause");
}
分享到:
相关推荐
分类算法-朴素贝叶斯算法C语言实现
《C语言实现KMP算法详解》 KMP(Knuth-Morris-Pratt)算法是一种在文本串中高效地查找模式串(子串)的字符串匹配算法,由D.E. Knuth、V.R. Morris和J.H. Pratt三位学者于1970年提出。在C语言中实现KMP算法,可以...
当模式串中出现不匹配时,它不会像朴素算法那样回溯到文本串的开头,而是根据已知的“部分匹配表”(也称为“失败函数”或“next数组”)直接跳过不匹配的部分,继续进行比较。 1. 部分匹配表:KMP算法的关键在于...
平方-乘算法(Square-and-Multiply Algorithm)是计算...通过C++编程实现,我们可以获得高效的算法实现,并通过可执行文件简化操作流程。理解并掌握这种算法及其实现,对于提升密码学和计算机科学领域的技能至关重要。
总之,Prim算法朴素版的C语言实现是一个基础但实用的方法,对于理解算法原理非常有帮助。虽然效率较低,但在处理小规模图时仍可接受。为了处理大规模图,可以考虑优化版本,如使用二叉堆或 Fibonacci heap。
朴素贝叶斯算法是一种基于概率理论的分类方法,它的...总的来说,C语言实现朴素贝叶斯算法涉及了概率统计、数据处理和算法设计等多个方面的知识,它可以帮助我们理解朴素贝叶斯的核心原理,并在实际项目中灵活应用。
在C#语言中实现该算法,我们可以充分利用其面向对象特性和丰富的库支持,创建一个高效且用户友好的程序。 1. **算法原理** Boyer-Moore算法主要依赖于两个规则:坏字符规则(Bad Character Rule)和好后缀规则...
在该实现中,我们使用了C语言实现了朴素贝叶斯分类器的算法。我们定义了一个函数CalculateWordProbability,用于计算每个类别下的概率分布。该函数使用了文件操作函数,来统计每个类别下的文件数和总单词数,然后...
在C语言中实现KMP算法,可以有效地处理字符串匹配问题,避免了朴素算法在匹配过程中频繁的回溯。 KMP算法的核心思想是利用已知的前缀和后缀的关系来提高匹配效率。它构建了一个部分匹配表(也称为失败函数或跳跃表...
本课程设计的主题聚焦在C语言和C++实现的字符串模式匹配,主要探讨了两种算法:KMP算法和朴素算法。 首先,让我们了解一下朴素算法。朴素算法是最直观的字符串匹配方法,它通过从文本串的起始位置开始,逐个字符地...
C语言:BF算法实现串匹配问题 Resources Summary Information: C Language: BF Algorithm Implementation of String Matching Problem 串匹配问题是计算机科学中一个基本问题,旨在寻找给定字符串在文本中的位置...
在C语言中实现贝叶斯算法,可以帮助开发者更深入地理解这一理论,并将其应用于实际项目中。 在C语言中,贝叶斯算法通常涉及到以下几个关键知识点: 1. **概率基础**:首先,理解概率的基本概念至关重要,包括事件...
使用C语言实现KMP算法,需要定义数据结构来存储部分匹配表,编写函数来构建此表,并实现主函数来完成字符串匹配。对于初学者而言,理解并实现KMP算法能帮助他们掌握动态规划的思想,提高解决实际问题的能力。通过...
### 字符串KMP算法C语言实现解析 在计算机科学领域,字符串匹配是常见的操作之一,其中KMP算法(Knuth-Morris-Pratt算法)因其高效性而被广泛使用。KMP算法由Donald Knuth、James H.Morris以及Vaughan Pratt共同...
基于朴素贝叶斯分类器的文本分类算法(C语言).doc
在C语言中实现朴素贝叶斯分类器,可以帮助开发者更好地理解和控制算法的每一个步骤,同时也提供了在资源有限的环境中运行的可能性。 1. **朴素贝叶斯分类原理**: 朴素贝叶斯分类器假设特征之间相互独立,并且每个...
本资源提供的是所有基础数据结构和算法的纯C语言实现,涵盖了广泛的主题,包括排序、链表、栈、队列、树、图算法、字符串匹配、回溯法以及并查集等。以下是对这些概念的详细说明: 1. **排序算法**:排序是将一组...
总结来说,"贝叶斯分类算法C实现"是一个涉及数据预处理、模型构建和超参数调优的过程,通过C语言进行编程,可以提高算法在实际项目中的适用性和效率。"贝叶斯网络超参数C"则强调了在C语言环境中,如何管理和优化影响...
贝叶斯算法可以在多种编程语言中实现,包括C语言和JAVA。C语言实现通常更注重效率,适合处理大规模数据;JAVA实现则拥有更好的跨平台性和丰富的库支持,使得代码编写更为简洁。 - **C语言实现**: C语言实现通常需要...