본문 바로가기
개발이야기/python

피보나치 함수 구현 방법

by 효우너 2020. 5. 30.
728x90
반응형

피보나치 함수는 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수다.

재귀함수로 구현하는 예시가 많다.

내가 구현한 재귀함수의 피보나치

def fibo(n):
    if n==0:
        return 0
    elif n==1:
        return 1
    return fibo(n-1)+fibo(n-2)

print(fibo(6)) #출력:8

이렇게 되는데 가끔 효율성이 떨어져서 알고리즘 문제를 풀면 실패할 때가 있다.

따라서 재귀함수 대신

def fibo(a):
    x,y=0,1
    for i in range(a):
        x,y=y,x+y
    return x

print(fibo(6)) #출력값 : 8

을 썼더니 같은 코드여도 성공했다,,!

아니면 내가 재귀함수를 잘 못 구현했을 수도 있다ㅠ___ㅠ

혹쉬나,,, 잘 못된 부분이 있다면 꼭 알려주세요!!!

728x90
반응형

'개발이야기 > python' 카테고리의 다른 글

list 덧셈  (0) 2020.08.21
itemgetter 사용하기  (0) 2020.05.31
ascii 변환  (0) 2020.05.17
range 사용하기  (0) 2020.05.06
sorted()와 sort()의 차이  (0) 2020.05.03

댓글