您的位置:首页 > 编程语言

传统字符串匹配算法--Brute Force算法的C代码实现

2014-11-19 11:28 423 查看
#include<stdio.h>
#include<string.h>

typedef char Elemtype;

void NativeStrMatching( Elemtype *Target, Elemtype *Pattern )
{
	int Tarlen = 0;
	int Patlen = 0;
	int flag = 0;

	Patlen = strlen( Pattern );

	while( *Target != '\0' ) {
		for( int i=0; i<Patlen; i++ ) {
			if( *(Target+i) != *(Pattern+i) )
				break;
		}

		if( i == Patlen ) {
			printf("位置%d处匹配成功!\n", Tarlen+1);
			flag = 1;
		}
		
		Tarlen++;
		Target++;
	}
	
	if( 0 == flag )
		printf("匹配不成功!\n");
}

int main()
{
	Elemtype TargetStr[30];
	Elemtype PatternStr[5];

	printf("请输入目标字符串: ");
	gets(TargetStr);

	printf("请输入模式字符串: ");
	gets(PatternStr);

	NativeStrMatching( TargetStr, PatternStr );

	return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: