728x90
반응형
문자열을 역순으로 반환하는 재귀함수
매개 변수로 전달 받은 문자열을 역순으로 만들어 반환하는 함수를 재귀함수로 구현해 보겠습니다.
def reverse_string(s):
if len(s) == 0:
return s
else:
return s[-1] + reverse_string(s[:-1])
org = "Hello Python!!!"
rvs = reverse_string(org)
print(org) # Hello Python!!!
print(rvs) # !!!nohtyP olleH
reverse_string이라는 함수를 정의합니다. 이 함수는 문자열 s를 입력으로 받으며, 기본 사례와 재귀 사례를 구현합니다.
기본 사례(base case)
문자열 s의 길이가 0일 경우, 즉 빈 문자열인 경우에는 그대로 빈 문자열을 반환합니다. 이 부분은 재귀 호출의 종료 조건으로 작동합니다.
if len(s) == 0:
return s
재귀 사례(recursive case)
그렇지 않은 경우, 문자열 s의 마지막 문자 s[-1]를 추출하고, 나머지 문자열 s[:-1]에 대해 reverse_string 함수를 다시 호출합니다. 마지막 문자를 맨 앞에 붙이는 과정을 반복하여 문자열을 뒤집습니다.
return s[-1] + reverse_string(s[:-1])
728x90
반응형
'수업자료' 카테고리의 다른 글
실습 : 디렉토리 트리 출력 (0) | 2024.07.27 |
---|---|
실습 : 리스트 모든 요소 합을 반환하는 재귀함수 (0) | 2024.07.27 |
실습 : 중복 제거 후 정렬 (0) | 2024.07.27 |
실습 : 두 개의 리스트에서 공통 요소 찾기 (0) | 2024.07.27 |
실습 : 중복 문자 제거 (0) | 2024.07.27 |
댓글