반응형 코딩테스트준비3 [알고리즘/Algorithm] 깊이 우선 탐색 - DFS / BOJ 2606 바이러스 안녕하세요!드디어 그래프 이론을 활용한 알고리즘 공부를 하고 있습니다.이론을 정리하고 문제 푸는 게 재미있지만 시간이 좀 걸리는 작업이기는 하네요 ㅎㅎ제가 한창 알고리즘 공부할 때 정말 재미있게 배웠던 그래프 알고리즘 중,가장 많이 활용되고 기본적으로 쓰이는 탐색 알고리즘을 공부해보겠습니다 :)이번에는 DFS 알고리즘을 정리해보려고 합니다~DFS의 정의 (깊이 우선 탐색)🔹 깊이 우선 탐색/DFS(Depth-First-Search) 란?: 그래프 또는 트리에서 한 정점에서 시작하여, 한 방향으로 갈 수 있는 곳 까지 끝까지 깊이 탐색한 후,더 이상 갈 곳이 없으면 다시 돌아와서(백트래킹) 다른 경로를 탐색하는 알고리즘입니다. 🔹 DFS의 특징항목설명탐색 방식깊이 우선 (먼저 한 쪽 끝까지 파고 듦)자.. 2025. 6. 16. [알고리즘/Algorithm] 분할정복 Divide and Conquer / BOJ 2630 색종이 만들기 안녕하세요, 이번에는 분할정복(Divide and Conquer)에 대하여 정리해보려고 합니다.동적계획법(Dynamic Programming)도 분할정복으로 문제를 푸는 경우가 많아서,그보다 먼저 정리를 할까 했는데 냅다 문제를 풀어버렸습니다 ㅎㅎ 따라서 이번엔 많은 문제해결에 적용이 되는 분할정복(Divide and Conquer)에 대해 정리해보겠습니다.분할정복 (Divide and Conquer) 이란?분할정복 (Divide and Conquer)이란, 큰 문제를 작은 문제로 분할(Divide)하여 작은 문제부터 해결(Conquer)하는 알고리즘 기법입니다. ◆ 핵심 개념문제를 작은 하위 문제(Subproblem)로 분할(Divide)하위 문제를 재귀적으로 정복(Conquer)하위 문제들의 결과를 .. 2025. 5. 13. [알고리즘/Algorithm] 완전탐색 / Brute-Force Algorithm 이론 정리 및 예제 풀이 안녕하세요,최근 알고리즘 문제풀이를 공부하다보니 이론을 다시금 정리해봐야겠다는 생각이 들었습니다.가장 먼저 완전탐색 알고리즘을 정리해보려고 합니다.완전탐색 / 브루트포스(Brute-Force) 알고리즘이란? / Exhaustive Algorithm완전탐색 알고리즘이란 뭘까요?말 그대로 모든 경우의 수, 혹은 모든 요소들을(완전히) 탐색하는 알고리즘입니다.모든 경우의 수를 탐색하기 때문에 '무식하게 푼다'는 의미인 Brute-Force라고도 불립니다. 주로 완전탐색 알고리즘 문제를 풀면가능한 모든 요소들/경우의 수를 탐색을 하여 정답을 도출을 합니다.간단하게 예를 들자면 다음과 같습니다.import java.util.Scanner;public class Main { public static void mai.. 2024. 11. 20. 이전 1 다음 반응형