병아리 개발자의 실력 양성기

  • 홈
  • 태그
  • 방명록

caching 1

Memoization, Top-down and Bottom-up

DP의 핵심요소는 메모이제이션(캐싱)이라고 할 수 있다. 이미 계산한 결과를 저장하는 재귀라고도 할 수 있다. 기억 공간을 반복될 계산결과의 저장에 할당함으로써 귀중한 연산시간을 절약하는 것이다. DP를 이용해 해결할 수 있는 대표적이며 가장 간단한 예로 피보나치 수열이 있다. 어떻게 이 문제가 재귀, top-down DP, bottom-up DP, 그리고 그 기억공간을 추가로 절감하는 방식으로 수행되는지를 살펴본다. 재귀 피보나치 수열은 수학적으로 다음 점화식(recurrence relation)으로 정의된다. $$ f_n = f_{n-1} + f_{n-2} $$ $$ f_0 = 0; \ f_1 = 1 $$ n번째 수를 구하기 위해서는 n-1번째, n-2번째 수를 알아야 하고, 그들을 알기 위해서는 다..

알고리즘/Dynamic Programming 2022.03.03
이전
1
다음
더보기
반응형
프로필사진

병아리 개발자의 실력 양성기

알고리즘 구현 능력을 기르는 과정을 함께 공유하고 성장하고자 합니다

  • 분류 전체보기 (64)
    • Soft Talks (12)
    • 알고리즘 (31)
      • Array (3)
      • Dynamic Programming (9)
      • Graph (9)
      • Sorting and Searching (1)
      • Hash Table (2)
      • Bits (1)
      • Math (3)
    • 머신러닝 (3)
      • Reinforcement Learning (0)
      • Supervised Learning (0)
      • Unsupervised Learning (0)
      • RecSys (추천) (0)
    • 플랫폼 (1)
      • Kafka (0)
      • Mongo DB (0)
      • Docker & k8s (1)
    • IT in General (1)
      • OS (2)
      • C++ (1)
      • Python (6)
    • Quant finance (1)

Tag

문자열, 공부법, OJ, dfs, BFS, 입출력, RTE, bintrees, memoization, 코테, cache, lru_cache, 엔지니어, 카카오, 합격, dp, python, 빅테크, connected components, coupon collectors' problem,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/05   »
일 월 화 수 목 금 토
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

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바