woojin++
[8월30일] Python 알고리즘, 재귀로 배열에 있는 숫자 더하기 본문
# 재귀(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))

'Python' 카테고리의 다른 글
| [8월30일] Python 알고리즘 , 버블정렬(Bubble Sort) (0) | 2021.08.30 |
|---|---|
| [8월30일] Python 알고리즘 퀵정렬 (0) | 2021.08.30 |
| [8월30일] Python 최대값, 최소값 구하는 알고리즘 (0) | 2021.08.30 |
| [8월30일] Python 짝수, 홀수 인지 판단하기 (0) | 2021.08.30 |