개발머해니

[파이썬] 뒤집힌 리스트 - 재귀 함수 본문

알고리즘

[파이썬] 뒤집힌 리스트 - 재귀 함수

왕행님 2023. 9. 15. 08:06
728x90
반응형

실습 설명


파라미터로 리스트 some_list를 받고, 뒤집힌 리스트를 리턴해 주는 재귀 함수 flip을 쓰세요.
반복문은 쓰면 안됩니다!

 

전역변수를 잡아서 푸는 방법 : pop(), append()

# 파라미터 some_list를 거꾸로 뒤집는 함수
flip_list = []

def flip(some_list):
    # 여기에 코드를 작성하세요
    if len(some_list) == 0 :
        return flip_list
    
    flip_list.append( some_list.pop() )
    return flip(some_list)

# 테스트 코드
some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
some_list = flip(some_list)
print(some_list)

 

인덱싱 활용하기

# 파라미터 some_list를 거꾸로 뒤집는 함수
flip_list = []

def flip(some_list):
    # base case
    if len(some_list) == 0 || len(some_list) == 1 :
        return some_list
    
    # recursive case
    return some_list[-1:] + flip(some_list[:-1])
    
    """
    ex) some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
    some_list[-1:] = [9]
    some_list[:-1] = [1, 2, 3, 4, 5, 6, 7, 8]
    """

# 테스트 코드
some_list = [1, 2, 3, 4, 5, 6, 7, 8, 9]
some_list = flip(some_list)
print(some_list)
[9, 8, 7, 6, 5, 4, 3, 2, 1]

 

 

 

코드잇 | 코딩, 쉬워질 때도 됐다

월 2만원대로 Python, JavaScript, HTML/CSS 등 3,000개 이상 프로그래밍 강의를 배워보세요!

www.codeit.kr

 

728x90
반응형