4,511,160 th visitor since 2017.2.1 ( Today : 1727 )
Programming
No. 504
Name. swindler
Subject. Brute Force Algorithm
Main Cate. 개발일반
Sub Cate.
Date. 2008-12-04 10:13
Hit. 3917 (210.182.190.136)
File. brute.gif    bf.gif  
// http://www-igm.univ-mlv.fr/~lecroq/string/

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

void bf( char *org, int n, char *sub, int m)
{
int i,j;
for( i=0; i<n-m+1; i++ )
{
for( j=0; j<m; j++ )
{
if( org[i+j] != sub[j] )
break;
}
if( j == m )
printf("%d\n", i );
}
}
int main()
{
char buff[] = "hello wowowr";
char sub[]="wow";

bf( buff, strlen(buff), sub, strlen(sub) );
return 0;
}



Brute Force Search 는 버퍼를 차례로 읽어가며 문자를 비교하는 알고리즘이다. 가장 기본적인 형태의 패턴매칭.
위 프로그램을 돌리면 결과 값은 6과 8이 나올것이다.








가장 기초적인 방법. text의 처음부터 끝까지 alphabet 하나씩 옮겨가며 비교. 따라서, TC 는 O( (n-m+1)m ) = O(nm) => O(n^2)




[바로가기 링크] : http://coolx.net/cboard/develop/504



Name
Password
Comment
Copyright © 1999-2017, swindler. All rights reserved. 367,611 visitor ( 1999.1.8-2004.5.26 ), 2,405,771 ( -2017.01.31)

  2HLAB   2HLAB_Blog   RedToolBox   Omil   Omil_Blog