문자열회전
문자열회전
기본적으로 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 함수로 확인한다.
- 알고리즘
- 두 문자열의 길이가 같지 않으면 회전조건을 만족시킬 수 없다.
- 문자열 하나를 반복하여 새로운 문자열을 만든다.
- 새로운 문자열에 남은 문자열이 속해 있는지 확인한다.