본문 바로가기

코드잇

[코드잇] 알고리즘 - 재귀함수

# 재귀함수를 이용하여 코드를 작성

def sum_digits(n):
    if n >= 1:
        return n % 10 + sum_digits(n // 10)
    else:
        return 0
# 코드잇 답안

def sum_digits(n):
    # base case
    if n < 10:
        return n

    # recursive case
    return n % 10 + sum_digits(n // 10)

def flip(some_list):
    # 코드를 입력하세요.
    if len(some_list) <= 1:
        return some_list
    else:
        return [some_list[-1]]+flip(some_list[:-1])
# 코드잇 답안

# 파라미터 some_list를 거꾸로 뒤집는 함수
def flip(some_list):
    # base case
    if len(some_list) == 0 or len(some_list) == 1:
        return some_list

    # recursive case
    return some_list[-1:] + flip(some_list[:-1])