BF 알고리즘 코드 (초 상세)
6113 단어 데이터 구조 학습 노트문자열알고리즘
예 를 들 어 strlen (lx \ 0 zlr): 그 중의 문자열 은 'lx \ 0 zlr' 이 고 strlen () 함수 가 '\ 0' 을 만나면 끝 이 므 로 반환 값 은 2 입 니 다.
예 를 들 어 char str [] = "lxadorezlr";이 배열 의 메모리 에 실제 저장 되 는 상황 은 l x a d o r e z l r \ 0 이 문자열 의 길 이 는 10 이 고 배열 의 길 이 는 11 입 니 다.
지금 바로 코드 올 리 기:
#include
#include // strlen()
int bf(char *s, char *t)
{
int i = 0, j = 0;
int len_s = strlen(s) - 1;
int len_t = strlen(t) - 1; //strlen() , "\0", 1。( 555)
while (i <= len_s && j <= len_t)
{
if (s[i] == t[j])
{
i++;
j++;
} else
{
i = i - j + 2; // , 0 , 1。( )
j = 1;
}
}
if (j > len_t)
return i - len_t;
else
return -1;
}
int main()
{
int i, j, k;
char *str1 = "lxadorezlr";
char *str2 = "adore";
k = bf(str1, str2);
printf("%d", k);
return 0;
}
BF 알고리즘 을 습득 한 후에 KMP 알고리즘 도 초보 적 인 인식 을 가 질 수 있 게 되 었 습 니 다 (다음 에 꼭).
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift 연습 Swift3에서 문자열을 정수로 변환하는 방법Swift3에서 문자열을 정수로 변환하는 방법 Swift3.swift Swift3.log 그럼 실패하지 않는 방법 Swift3.swift Swift3.log Swift1.x에서는, ""12345""라고 하는 정수를 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.