>웹 프론트엔드 >JS 튜토리얼 >사전순으로 가장 작은 문자열 회전을 찾는 JavaScript 프로그램

사전순으로 가장 작은 문자열 회전을 찾는 JavaScript 프로그램

WBOY
WBOY앞으로
2023-08-25 19:41:021010검색

JavaScript 程序查找字典顺序最小字符串旋转

JavaScript에서 사전순으로 가장 작은 문자열 회전을 찾아보겠습니다. 이 방법에는 원래 문자열을 자체적으로 연결한 다음 내장된 "정렬" 기능을 사용하여 연결된 문자열을 오름차순으로 정렬하는 작업이 포함됩니다. 마지막으로, 원래 문자열과 길이가 동일한 정렬된 연결된 문자열의 가장 작은 부분 문자열을 반환합니다. 이는 사전순으로 볼 때 가장 작은 문자열 회전입니다.

우리는 문자열 조작 기술과 JavaScript에서 사용할 수 있는 내장 함수를 사용하여 이 논리를 구현합니다. 구현 결과는 입력 문자열의 사전순 최소 회전을 나타내는 문자열이 됩니다. 이는 문자열을 효율적으로 비교하고 정렬하는 데 유용합니다.

앞으로 우리는 사전식으로 가장 작은 문자열 회전을 더 빠르고 효율적으로 찾을 수 있도록 알고리즘을 지속적으로 개선할 것입니다.

방법

5줄에서 사전순으로 가장 작은 문자열 회전을 찾는 방법이 설명되어 있습니다 -

  • 원래 문자열 자체를 연결하여 가능한 모든 회전이 고려되도록 합니다.

  • 최소 회전의 시작점으로 사용될 다음 문자와 같지 않은 첫 번째 문자를 찾으세요.

  • 해당 문자가 발견되지 않으면 이미 최소한으로 회전되었으므로 원래 문자열이 반환됩니다.

  • 발견된 문자부터 문자열 끝까지 연결된 문자열의 하위 문자열을 최소 회전으로 반환합니다.

  • 생성된 하위 문자열은 사전순으로 볼 때 가장 작은 문자열 회전이 됩니다.

문자열의 사전순으로 가장 작은 회전은 원래 문자열을 자체 문자열과 연결하고 원래 문자열의 첫 번째 문자로 시작하는 가장 작은 하위 문자열을 찾는 방식으로 찾을 수 있습니다.

다음은 JavaScript로 구현된 예입니다 -

으아악

지침

  • 먼저 원래 문자열을 자체 문자열과 연결하여 strDouble을 얻습니다.

  • 원래 문자열의 길이를 저장하기 위해 변수 len도 정의합니다.

  • 그런 다음 strDouble에서 길이가 len인 첫 번째 하위 문자열로 minRotation을 초기화합니다. 즉, strDouble >.substring(0, len)입니다. 이것이 사전식으로 가장 작은 문자열 회전을 찾기 위한 출발점입니다.

  • 그런 다음 for 루프를 사용하여 두 번째 문자부터 시작하여 strDouble에서 길이가 len 인 모든 가능한 하위 문자열을 반복합니다.

  • 각 반복마다 strDouble, 현재 위치 i.에서 길이 len 의 하위 문자열을 가져와 현재 회전

    currRotation
  • 을 찾습니다.
  • currRotationminRotation보다 작으면 현재 회전으로 minRotation을 업데이트합니다.

  • 마지막으로 for 루프가 끝난 후 문자열의 사전순으로 가장 작은 회전인 minRotation 값을 반환합니다.

위 내용은 사전순으로 가장 작은 문자열 회전을 찾는 JavaScript 프로그램의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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