본문 바로가기

개발 공부/알고리즘3

알고리즘 - 그리디 알고리즘 이번 포스트에서는 그리디 알고리즘에 대해 알아보겠습니다. 해당 내용은 나동빈 님이 집필하신 이것이 취업을 위한 코딩테스트다 with 파이썬 을 보며 공부한 내용을 토대로 작성하였습니다. 그리디 알고리즘 그리디 알고리즘이란 국내에서 흔히 탐욕법으로도 소개되곤 합니다. 이 알고리즘은 말 그대로 단순하게 탐욕적으로 문제를 해결하는 하나의 방식을 말합니다. 매 순간 가장 최선의 선택을 하여 문제를 푸는 알고리즘이기 때문에 정렬 알고리즘과 짝을 이뤄서 출제가 되는 경향이 있습니다. 그리디 알고리즘 문제는 다른 알고리즘과 비교했을 때 사전에 외우고 있지 않아도 문제를 해결할 수 있는 가능성 이 높습니다. 하지만 그리디 알고리즘 문제의 유형의 폭이 굉장히 넓기 때문에 모든 문제를 숙련도 없이 접근해서 해결하기는 어렵.. 2021. 7. 21.
알고리즘 공부 - 준비하기 알고리즘 공부시작하기 코딩 테스트는 예전부터 항상 뜨거운 감자였다. 요즘 핫하다는 IT계열 회사의 입사 전형에 빠지지 않고 등장하는게 바로 코딩테스트이다. 어느 순간부터 좋은 회사, 흔히 마라는 네카라쿠배 급의 회사를 입사하려면 코딩테스트는 필수가 되었다. 코딩 테스트에도 종류가 갈리는데 크게 개발형 코딩테스트 알고리즘 문제 풀이형 코딩 테스트 이 두가지로 분류된다. 나는 여기서 알고리즘 문제 풀이형 코딩 테스트에 대비해 알고리즘 공부를 시작하고, 블로그를 통해 공부한 내용을 정리하려고 한다. 내가 현재 공부하고 있는 책은 나동빈님께서 서술하신 이것이 취업을 위한 코딩테스트다 라는 책이다. 책을 읽고 배운 내용을 정리하고 문제를 풀며 알고리즘에 대한 자신감이 쌓이길 기대하는 중이다. 알고리즘 코딩테스트는.. 2021. 5. 24.
백준 [9461] - 파도반 수열 - Java 백준 9461 - 파도반 수열 백준 9461 다이나믹 프로그래밍 카테고리에 있는 문제입니다. 먼저 문제를 살펴보겠습니다. 이 문제에서 핵심은 P(1)부터 P(10)까지 첫 10개 숫자는 1, 1, 1, 2, 2, 3, 4, 5, 7, 9이다. 이 부분입니다. 여기서 정답을 출력하기 위한 점화식을 도출 할 수 있습니다. P(n) => p(n - 2) + p(n - 3) 이런 수식을 도출 할 수 있습니다. n의 값을 구하려면 n - 2의 값과 n - 3의 값을 더하면 됩니다. 문제의 입력, 출력부분과 함께 코드를 보며 설명하겠습니다. import java.util.Scanner; public class PadovanSequence { public static void main(String[] args) { .. 2020. 9. 4.