>  기사  >  백엔드 개발  >  문자열 B가 문자열 A의 하위 문자열로 존재하는지 쿼리

문자열 B가 문자열 A의 하위 문자열로 존재하는지 쿼리

WBOY
WBOY앞으로
2023-09-03 12:25:10923검색

문자열 B가 문자열 A의 하위 문자열로 존재하는지 쿼리

介绍

이 튜토리얼에서는 문자열 B가 문자열 A의 하위 문자열로 존재하는지 확인하는 쿼리를 살펴보겠습니다. 하위 문자열은 기본 문자열의 일부인 문자열입니다. 쿼리 배열에는 몇 가지 정수 값이 있으며 문자열 A의 인덱스를 검사하여 해당 정수 값이 하위 문자열 B와 일치하는지 확인합니다. C++ 쿼리를 사용하여 B가 A의 하위 문자열인지 확인합니다. 이 접근 방식에는 문자열 A가 있고 B는 A의 하위 문자열입니다. C++의 쿼리는 배열 형식으로 표현되는 정수 값입니다. 문자열 A가 있고, B는 하위 문자열이고, i는 일부 쿼리의 정수 값입니다. 쿼리 인덱스 값에서 문자열 A에 하위 문자열 B가 있으면 출력은 Yes이고, 그렇지 않으면 출력은 No입니다.

구현 1

적중문翻译为:

实施方案1

으아악

출력

으아악

위 예에서 A[0,2]에서 인덱스 값 0~2의 문자는 "aba"이고 하위 문자열 B와 같습니다. 따라서 출력은 "Yes"입니다.

A[1, 3]에서 인덱스 값 1~3의 문자는 "bab"이며 하위 문자열 B와 동일하지 않습니다. 따라서 출력은 No입니다.

구현 2

으아악

출력

으아악

위의 예에서는 쿼리 값을 문자열 A의 인덱스 값으로 사용하여 문자열 A에 하위 문자열 B가 있는지 확인합니다. A[0, 9]에서 하위 문자열 B가 문자열 A에 존재하고 출력은 Yes입니다. . 이후 다른 인덱스 값에서는 B가 A에 존재하지 않으므로 출력은 No입니다.

위 예제를 C++ 프로그래밍 언어로 구현하기 위해 롤링 해시 알고리즘을 사용하여 하위 문자열을 입력 문자열과 일치시킵니다. 해시 테이블을 사용하여 부분 문자열 B의 해시 값을 계산합니다. 해시 테이블은 키-값 쌍을 제공합니다. 롤링 해시 알고리즘을 사용하면 문자열 A의 재해싱을 방지하고 속도를 높일 수 있습니다.

으아악

출력

으아악

结论

재본教程中,저는 C++代码来实现查找查询以检查子字符串是否存에서于字符串中的任务。我们使用了滚动哈希方法来生成查询并获取结果。滚动哈希算法是一种C++中计算子字符串哈希值的字符串算法,它使用旧值计算哈希值。为了使任务简单和简单,我们使用哈希函数计算哈希值。我们可以根据需要使用多个哈希函数。

위 내용은 문자열 B가 문자열 A의 하위 문자열로 존재하는지 쿼리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 tutorialspoint.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제