Welcome! 🙋‍♂️ View more

algorithm 2

[Algorithm] 알고리즘을 위한 Scala 기본 문법

Scala란 함수형 객체지향 프로그래밍 언어로써 Spark를 사용할 때 빠른 성능을 이용할 수 있음으로 데이터 엔지니어링 역량에 필요한 언어입니다. 필자는 Scala언어와 친해지기 위해서 Scala 언어를 활용하여 많은 알고리즘 문제를 풀어보았습니다. https://github.com/DeepFlame-JR/Algorithm_Solving GitHub - DeepFlame-JR/Algorithm_Solving: 알고리즘 문제 풀이 알고리즘 문제 풀이 . Contribute to DeepFlame-JR/Algorithm_Solving development by creating an account on GitHub. github.com 아래에 알고리즘에 필요한 Scala 기본 문법에 대해서 정리해보겠습니다...

[알고리즘] 다이나믹 프로그래밍 (feat. Leetcode)

다이나믹 프로그래밍이란? 큰 문제를 작은 문제로 나누어 풀고, 작은 문제의 답을 재활용하는 기법을 의미한다. 메모리 비용을 활용하여 시간적 비용을 줄이는 방식이다. 👉 조건 부분 반복 문제: 작은 문제가 반복되는 경우 최적 부분 구조: 같은 문제는 구할 때마다 정답이 같을 경우 작은 문제가 반복되고 그 문제의 답이 같기 때문에, 굳이 작은 문제에 대한 계산을 반복하지 않고 이를 메모리에 저장하여 활용하는 것이다. Fibonacci 수열 DP를 설명할 때 가장 기본적으로 예를 들 수 있는 것이 Fibonacci 수열이다. 이는 f(n) = f(n-1) + f(n-2)의 점화식을 가진다. 아래 Leetcode 문제를 재귀 함수를 이용하는 방법과 동적 프로그래밍을 사용하는 방법으로 풀어볼 것이다. https:..