字符串朴素匹配C++实现

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
    /* 
     *字符串的朴素匹配 
     通过每一个字母对应着主串 
     进行一次的进行比较,知道 
     其中的一个串的所有字母都匹配成功 
     */  
    #include <iostream>  
    #include <cstdio>  
    #include <malloc.h>  
    #include <cstring>  
    using namespace std;  
    int index(char *a, char *b)  
    {  
        int tarindex = 0;  
        while(a[tarindex] != '\0')  
        {  
                int tarlen = tarindex;  
                int patlen;  
                for(patlen = 0; b[patlen] != 0; patlen++)  
                {  
                        if(a[tarlen++] != b[patlen])  
                        {  
                            break;  
                        }     
                }  
                if(b[patlen] == '\0')  
                {  
                    return tarindex;  
                }  
                tarindex++;  
        }  
        return -1;  
    }  
    int main()  
    {  
        char *a;  
        char *b;  
        a = (char*)malloc(sizeof(char));  
        b = (char*)malloc(sizeof(char));  
        gets(a);  
        gets(b);  
        cout<<"第 "<<index(a, b) + 1<<" 个字母开始匹配!"<<endl;  
        return 0;  
    }  

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:一个 MySQL 分库分表php类

下一篇:PHP生成图片验证码