Notice
Recent Posts
Recent Comments
Link
«   2026/06   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

woojin++

[8월30일] Python 알고리즘, 재귀로 배열에 있는 숫자 더하기 본문

Python

[8월30일] Python 알고리즘, 재귀로 배열에 있는 숫자 더하기

곰바구니 2021. 8. 30. 19:20

# 재귀(recursive)

재귀는 자기 자신을 호출 하는 것을 말한다.

 

## 재귀함수(recursive function)

재귀함수는 자기 자신을 호출하는 함수 

## 재귀함수 만들기 

탈출조건 , 끝나는 조건이 꼭 들어가야 한다.

arr = [7,3,2,9]

def sum(arr):

        #pop()
        last = arr.pop() # 9 
        print("arr =>", arr)
        print("last=>", last) 

        result = last 


        # arr = [7,3,2]
        last = arr.pop()  # 2 
        print("arr2 =>", arr)
        print("last2=>", last)
        
        result = result +  last 


        # arr = [7,3]
        last = arr.pop() # 3
        print("arr3=>",arr)
        print("last3=>", last)

        result = result + last


        # arr = [7]
        last = arr.pop()
        print("arr4=>",arr)
        print("last3=>" , last)

        result = result + last
        return result



result = sum(arr)
print("result=>", result)

arr = [7,3,2,9]

def sum(arr, accu):

    print(arr, accu)

    if(len(arr) ==0): return accu
    last = arr.pop() 
    result = last 
    return sum(arr, accu + result)



result = sum(arr, 0)
print("result=>", result)

 

arr = [7,3,2,9]
def sum(arr, accu):
    if(len(arr) ==0): return accu
    return sum(arr, accu + arr.pop())

print("result=>",  sum(arr, 0))