[Python] 피보나치 수열 구현 (fibonacci sequence)
이번에는 저번 sorted 포스팅에 이어 과제로 자주 나오는 피보나치 수열을 구현해보겠다. 우선 피보나치 수열이란 첫째 항, 둘째 항이 모두 1이면 그 뒤의 모든 항은 그 앞 두 항의 합인 수열이다. 우선 피보나치 수열을 살펴보자 $$ \begin{align} &F_{0}=&0\\ &F_{1}=&1\\ &F_{n}=&F_{n-2}&+&F_{n-1}& \end{align} $$ 위와 같은 일반항으로 수열이 나타난다. 결국 0, 1, 1, 2, 3, 5, 8, 13, 21 ...... 이런식으로 증가하는 수열이다. 그렇다면 구현해보겠다 우선 우리가 기존에 알던 방식으로 해보겠다. $F_{1}$항부터 시작하도록 하겠다. def fibonacci(number): i=2 arr=[1,1] if(number
2022. 5. 26.
[Python] 내장함수 map 구현
이번에는 앞의 filter와 사용법이 비슷한 map에 대해서 알아보겠다. map은 iterable의 모든 element에 function을 적용해서 반환한다. 사용 예시를 보자 test = [1, 7, 5, 2, 9, 11] print(list(map(lambda x: x * 2, test))) #[2, 14, 10, 4, 18, 22] 이렇게 test의 모든 원소 x에 대하여 x*2가 반환된다. 그럼 구현해보겠다 해당 iterable을 돌면서 각 원소에 function을 적용해주면 된다. def my_map(function, iterable): res=[] for i in iterable: res.append(function(i)) return res 아주 간단하게 구현된다. 그럼 테스트를 해보겠다. ..
2022. 5. 19.