/ PROGRAMING, PYTHON

문자열회전

문자열회전

기본적으로 ChatGPT를 이용하여 틀을 잡고 만든 것

문자열을 회전시키는 문제
입력으로 주어진 문자열을 왼쪽으로 회전시키고
회전시킨 문자열을 출력해야 합니다.


문자열회전 1

주어진 두 개의 문자열이 서로 회전 관계에 있는지 확인하는 알고리즘 작성
예) “waterbottle”과 “erbottlewat”은 서로 회전 관계

def is_rotation(str1, str2):
    # 두 문자열의 길이가 같지 않으면 회전관계가 성립되지 않는다.
    if len(str1) != len(str1) : return False
    
    # str1 문자열을 이어붙여 반복되는 새로운 문자열을 만든다.
    # str2의 문자열을 새로운 문자열에 포함되는 문자열인지 확인한다.
    new_str = str1+str1
    return str2 in new_str

print(is_rotation("abc","bca"))
print(is_rotation("waterbottle","erbottlewat"))
True
True
  • 함수
    • 문자열 더하기나 곱하기를 사용하여 반복된 문자를 생성한다.
    • 문자나 문자열이 다른 문자열에 속해 있는지 in 함수로 확인한다.
  • 알고리즘
    • 두 문자열의 길이가 같지 않으면 회전조건을 만족시킬 수 없다.
    • 문자열 하나를 반복하여 새로운 문자열을 만든다.
    • 새로운 문자열에 남은 문자열이 속해 있는지 확인한다.