< Hyun / Log >
close
프로필 배경
프로필 로고

< Hyun / Log >

  • 분류 전체보기 (428)
    • ◼ JAVA (67)
    • ◼ Spring (76)
    • ◼ JPA (28)
    • ◼ Thymeleaf (5)
    • ◼ DB (30)
    • ◼ 오픈소스 (16)
    • ◼ DevOps (10)
    • ◼ CS 기초 지식 (59)
      • [네트워크] (22)
      • [개발상식] (15)
      • [운영체제] (5)
      • [알고리즘] (16)
    • ◼ 트러블 슈팅 (15)
    • ◼ 기타 (6)
    • ◼ 우아한테크코스 (6)
    • ◼ 코딩테스트 (110)
      • 구현 (Implementation) (57)
      • DFS,BFS (31)
      • 완전탐색 (Bruteforce) (5)
      • 그리디 (Greedy) (6)
      • 투포인터 (Two Pointer) (2)
      • 이분탐색 (Binary Search) (1)
      • 스택, 큐 (Stack, Queue) (4)
      • DP (Dynamic Programming) (3)
      • 다익스트라 (Dijkstra) (0)
      • 구간합 (Prefix) (1)
  • 홈
  • Github

[알고리즘] 동적 프로그래밍 (DP) 란? feat.동적 계획법

동적 프로그래밍(Dynamic programming) 란? 동적 프로그래밍은 "큰 문제"를 "부분 문제"로 나누고, "부분 문제"의 정답으로 "큰 문제"의 답을 찾는 알고리즘 설계 기법입니다. 동적 프로그래밍의 대표적인 예로 피보나치 수열을 예로 들 수 있는데요, 이 점화식을 코드로 표현하면 다음과 같습니다. F[1] = 1 F[2] = 1 F[1] = F[2] F[i] = F[i-1] + F[i-2] 점화식은 재귀식이라고도 하며 위 코드를 보면 피보나치 수열은 재귀적인 관계를 가지고 있다는 것을 알 수 있습니다. DP를 적용하기 위한 2가지 조건 동적 프로그래밍을 적용시키기 위해선 다음 고같은 두 가지가 만족되어야 합니다. 부분 반복 문제(Overlapping Subproblem) 최적 부분 구조(Op..

  • format_list_bulleted ◼ CS 기초 지식/[알고리즘]
  • · 2022. 9. 19.
  • textsms
반응형
  • navigate_before
  • 1
  • navigate_next
반응형
전체 카테고리
  • 분류 전체보기 (428)
    • ◼ JAVA (67)
    • ◼ Spring (76)
    • ◼ JPA (28)
    • ◼ Thymeleaf (5)
    • ◼ DB (30)
    • ◼ 오픈소스 (16)
    • ◼ DevOps (10)
    • ◼ CS 기초 지식 (59)
      • [네트워크] (22)
      • [개발상식] (15)
      • [운영체제] (5)
      • [알고리즘] (16)
    • ◼ 트러블 슈팅 (15)
    • ◼ 기타 (6)
    • ◼ 우아한테크코스 (6)
    • ◼ 코딩테스트 (110)
      • 구현 (Implementation) (57)
      • DFS,BFS (31)
      • 완전탐색 (Bruteforce) (5)
      • 그리디 (Greedy) (6)
      • 투포인터 (Two Pointer) (2)
      • 이분탐색 (Binary Search) (1)
      • 스택, 큐 (Stack, Queue) (4)
      • DP (Dynamic Programming) (3)
      • 다익스트라 (Dijkstra) (0)
      • 구간합 (Prefix) (1)
최근 글
최근 댓글
05-09 19:04
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바