일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 북마크앱
- 타사인증
- 자바스크립트
- Node.js
- 예술영화추천
- 독립영화플랫폼
- 장고 프로젝트 순서
- passport.js
- Exercism
- til
- 알고리즘
- 프로젝트
- Django
- Blog
- 개발
- 북마크만들기
- MyPick31
- JavaScript
- mongodb
- MYSQL
- 장고 프로젝트
- Algorithm
- 파이썬 웹프로그래밍 장고
- 장고 개발 순서
- Django Blog
- ART_Cinema
- python
- 장고
- Bookmark
- join()
- Today
- Total
목록dynamic programming (2)
Juni_Dev_log
📌 시간복잡도 O(n) : for문을 1번 사용 📌 공간복잡도 O(1) : 변수로 저장하는 것이 없고, 임의로 저장하는 heap memory에 해당하는 dp[i] 값들만 저장공간에 남는다. Problem You are a professional robber planning to rob houses along a street. : 당신은 거리를 따라 집을 강탈하려는 전문 강도이다. Each house has a certain amount of money stashed. All houses at this place are arranged in a circle. : 각각의 집에는 일정 금액의 돈이 숨겨져있다. 이 장소의 모든 집은 원으로 배열화되어있다. That means the first house is t..
동적 계획법이란? 동적 계획법(Dynamic Programming)은 일반적으로 문제를 풀기 위해서, 문제를 여러 개의 작은 문제로 쪼개서, 그 값들을 결합하여 최종적인 결과를 얻는 것이다. 그러기 위해서, 각 하위 문제들의 값을 별도의 변수 등에 저장해서 필요할 때마다 꺼내 쓰는 것이다. 이러한 것을 보여주는 예시로 피보나치 수열을 들 수 있다. 1 2 3 4 5 6 7 def fibonacci(n): if n == 0: return 0 if n == 1 or n == 2: return 1 else: return fibonacci(n-1) + fibonacci(n-2) cs 피보나치 수열을 재귀함수를 이용해서 구현하면 정말 쉽게 구현할 수 있다. 하지만, 효율성 측면에서 보면 좋은 코드는 아니다. 위 ..