| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 483 人关注过本帖
标题:字符串匹配,如何优化问题
只看楼主 加入收藏
qiqid
Rank: 2
等 级:论坛游民
帖 子:36
专家分:12
注 册:2013-3-31
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
字符串匹配,如何优化问题
这个程序是用简单模式匹配实现字符串找子串功能,程序以及功能实现不会错,但是这不是最优的简单匹配算法,我想不出怎么去优化,希望大家一起想想,有想法的就提出来,看能不能通过。

   #include <stdio.h>
#include <string.h>

#define SIZE 10001

int s_length;
int t_length;

int compare(char *s,char *t)
{
    int i;
    int j;

    int k;

    for(i=0;i<=s_length-t_length;i++)
    {
        for(j=0;j<t_length;j++)
        {
            if(s[k]==t[j])
                k++;
            else
                break;
        }
        if(j==t_length)
            return 1;
    }
   
    return 0;
}

int main()
{
    int N;
    char s[SIZE];
    char t[SIZE];

    while(scanf("%d",&N)!=EOF)
    {
        while(N--)
        {
            scanf("%s",s);
            scanf("%s",t);

            s_length=strlen(s);
            t_length=strlen(t);

            if(compare(s,t))
                printf("yes\n");
            else
                printf("no\n");
        }
    }
    return 0;
}
搜索更多相关主题的帖子: compare include 字符串 如何 
2014-05-02 00:50
qiqid
Rank: 2
等 级:论坛游民
帖 子:36
专家分:12
注 册:2013-3-31
收藏
得分:0 
我自己来说吧,把数组改为全局数组,这是栈与堆的区别所在,但具体什么区别我就不是很清楚。
2014-05-02 02:24
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:20 
一、使用string.h是一个败笔  所有涉及字符串的函数都应该自己实现
二、应该使用动态内存

DO IT YOURSELF !
2014-05-02 06:20
qiqid
Rank: 2
等 级:论坛游民
帖 子:36
专家分:12
注 册:2013-3-31
收藏
得分:0 
使用string.h是一个败笔  所有涉及字符串的函数都应该自己实现
版主的话值得思考。
2014-05-03 01:00
top398
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:427
专家分:857
注 册:2014-5-2
收藏
得分:0 
都已经要自己实现 strcmp 了,就不应该再用 strlen。
2014-05-03 01:09
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
知道 KMP 么?


[fly]存在即是合理[/fly]
2014-05-03 02:11
快速回复:字符串匹配,如何优化问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024568 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved