Project Hub

2. 피보나치 수열 본문

Algorithm/Python

2. 피보나치 수열

safy 2022. 10. 11. 15:12
728x90
반응형

피보나치 수열

  • 피보나치 수(영어: Fibonacci numbers)는 첫째 및 둘째 항이 1이며 그 뒤의 모든 항은 바로 앞 두 항의 합인 수열

피보나치 수열

피보나치 수열을 두 가지 방법을 이용하여 구현하였다.

1. for 문을 사용

2. 재귀를 사용

  • 재귀에 대한 설명은 이전 글을 참고하면 된다. 

2022.10.06 - [Algorithm/Python] - 1. 진법 변환

 

1. 진법 변환

파이썬 숫자에 대한 개념은 아래의 글을 확인하면 된다. 해당 문제들은 '파이썬 자료구조와 알고리즘' 책에 나오는 내용이다. 2022.10.03 - [Python/기초 개념] - 숫자 숫자 파이썬 자료구조와 알고리

projecthub.tistory.com

 

구현 내용은 아래와 같다.

# 피보나치 수열: 첫째 및 둘째 항이 1이며, 그 이후의 모든 항는 바로 앞 두 항의 합인 수열

# for 문 사용
def find_fibonacci_seq_iter(number):
    if number < 2:
        return number
    
    first_num = 0
    sec_num = 1
    
    for i in range(number):
       first_num, sec_num = sec_num, first_num + sec_num

    return first_num
    
# 재귀 사용
def find_fibonacci_seq_rec(number):
    if number < 2:
        return number
    else:
        return find_fibonacci_seq_rec(number - 1) + find_fibonacci_seq_rec(number - 2)

def test_find_fib():
    number = 10
    print(find_fibonacci_seq_iter(number))
    print(find_fibonacci_seq_rec(number))     

if __name__ == "__main__":
    test_find_fib()
728x90
반응형

'Algorithm > Python' 카테고리의 다른 글

3. 최대공약수, 최소공배수, 소수  (0) 2022.10.11
1. 진법 변환  (0) 2022.10.06
Comments