> 백엔드 개발 > C++ > 본문

## 문자열 s2는 문자열 s1의 회전 버전인가요?

Mary-Kate Olsen
풀어 주다: 2024-10-25 07:12:29
원래의
177명이 탐색했습니다.

## Is String s2 a Rotated Version of String s1?

인터뷰 질문: 문자열 회전 식별

s1과 s2라는 두 개의 문자열이 주어졌을 때 인터뷰 대상자는 최근 s1이 문자열인지 여부를 결정하는 질문에 직면했습니다. s2의 회전 버전. 회전된 버전은 해당 문자가 왼쪽이나 오른쪽으로 특정 위치만큼 이동되어 동일한 문자가 다른 순서로 포함된 새 문자열이 생성되는 문자열을 의미합니다.

간단한 솔루션

이 문제를 해결하려면 간단하면서도 효과적인 접근 방식을 사용할 수 있습니다. 계속하기 전에 두 문자열 s1과 s2의 길이가 동일한지 확인하는 것이 중요합니다. 이것이 확인되면 s1을 자체적으로 연결하여 s1s1로 표시되는 더 긴 문자열을 형성할 수 있습니다.

이제 해결 방법의 핵심은 s2가 연결된 문자열 s1s1의 하위 문자열인지 여부를 검사하는 것입니다. s2가 실제로 s1s1의 하위 문자열인 경우 이는 s2의 문자가 s1s1의 연속 세그먼트 내에서 찾을 수 있음을 나타냅니다. 결과적으로 문자를 본질적으로 이동시키는 s1의 회전으로 인해 s2를 하위 문자열로 유지하는 새 문자열이 생성됩니다.

문자열 s1 =을 고려하세요. "stackoverflow" 및 s2 = "tackoverflows". s1을 자신과 연결하면 s1s1 = "stackoverflowstackoverflow"라는 문자열을 얻게 됩니다. s2는 s1s1의 하위 문자열이며, 이는 s1과 s2가 서로 회전된 버전임을 나타냅니다.

이 단순화된 솔루션은 하위 문자열 검색 알고리즘의 강력한 기능을 활용하여 문자열 회전을 결정하는 효율적인 방법을 제공합니다. 과도한 반복이나 조작을 피함으로써 문제 해결에 대한 간결하고 우아한 접근 방식을 제공합니다.

위 내용은 ## 문자열 s2는 문자열 s1의 회전 버전인가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!