댓글 검색 목록

[기타] 초보자를 위한 동적 프로그래밍 – 메모 화 및 표로 코딩 문제를 해결하는 방법

페이지 정보

작성자 운영자 작성일 20-12-13 18:10 조회 698 댓글 0

동적 프로그래밍은 알고리즘이 실행되는 동안 데이터 구조에 알고리즘 결과를 저장하는 코딩 스타일입니다.


동적 프로그래밍을 이해하면 복잡한 프로그래밍 문제를 더 빨리 해결할 수 있습니다.


이러한 방법은 데이터 구조 및 알고리즘에 대한 프로그래밍 인터뷰 질문을 수행하는 데 도움이 될 수 있습니다. 또한 일상적인 코딩도 향상 시킬 수 있습니다.


freeCodeCamp.org YouTube 채널에서 동적 프로그래밍에 대한 5 시간 과정을 출시했습니다.


Alvin Zablan이이 과정을 개발했습니다. Alvin은 기술 인터뷰 준비 및 코딩 문제를 다루는 인기 웹 사이트 인 Coderbyte의 숙련 된 프로그래밍 강사입니다.


이 과정에서는 동적 프로그래밍 전략을 사용하여 다음과 같은 프로그래밍 문제를 해결하는 방법을 배웁니다.


  • 피보나치 수열의 40 번째 수를 계산합니다.
  • 6x9 그리드를 이동하는 다양한 방법의 수를 계산합니다.
  • 동전 한 세트가 주어 졌을 때 어떻게 최소 동전 수로 27 센트를 벌 수 있습니까?

이 과정에서는 이미지와 애니메이션을 사용하여 문제와 중요한 개념을 시각화 합니다. 개념적으로 문제를 이해 한 후 동적 프로그래밍을 사용하여 JavaScript에서 문제를 해결하는 방법을 배웁니다.


이 과정에서는 JavaScript를 사용하지만 Python을 비롯한 다른 프로그래밍 언어에 적용 할 수 있는 개념과 지식을 배웁니다.


image-27.png 

동적 프로그래밍은 작업 속도를 실제로 높일 수 있습니다. 그러나 상식은 일을 더 빠르게 할 수 있습니다. (XKCD의 여행 세일즈맨 문제 웹툰)


이 과정에서 다루는 동적 프로그래밍 방법 


이 과정의 1 부에서는 메모 화 방법에 중점을 둡니다. 여기에서 재귀를 사용하고 알고리즘의 중간 결과를 저장합니다. 그런 다음 루프를 통해 나중에 여행 할 때 이러한 결과에 액세스 할 수 있습니다.


이 과정에서 다루는 메모 화 전략은 다음과 같습니다.


  • fib 메모
  • gridTraveler 메모화
  • 메모 레시피
  • canSum 메모
  • howSum 메모
  • bestSum 메모
  • canConstruct 메모
  • countConstruct 메모화
  • allConstruct 메모화

두 번째 부분은 표 작성 전략에 중점을 둡니다. 여기에는 데이터 테이블을 반복적으로 구축하는 것이 포함됩니다.


이 과정에서 다루는 표 작성 전략은 다음과 같습니다.


  • fib tabulation
  • gridTraveler tabulation
  • tabulation recipe
  • canSum tabulation
  • howSum tabulation
  • bestSum tabulation
  • canConstruct tabulation
  • countConstruct tabulation
  • allConstruct tabulation

freeCodeCamp.org YouTube 채널 (5 시간 시청)에서 전체 과정을 볼 수 있습니다.


https://www.freecodecamp.org/news/learn-dynamic-programing-to-solve-coding-challenges/




댓글목록 0

등록된 댓글이 없습니다.

웹학교 로고

온라인 코딩학교

코리아뉴스 2001 - , All right reserved.