분류 전체보기(637)
-
동적 계획법 - 2. DP의 기본 패턴 익히기
2. DP의 기본 패턴 익히기동적 계획법(DP)을 효율적으로 사용하려면 기본적인 패턴을 익히는 것이 중요합니다. 여기서는 1차원 DP와 2차원 DP를 활용하는 대표적인 문제들을 소개합니다.2-1. 기본적인 1차원 DP1차원 DP는 배열 또는 변수 몇 개를 이용해 최적의 해를 구하는 방식입니다. 대표적인 예제로 피보나치 수열, 계단 오르기 문제, 동전 거스름돈 문제 등을 살펴보겠습니다.📌 계단 오르기 문제 (Climbing Stairs)문제 설명한 번에 1칸 또는 2칸씩 오를 수 있을 때, n개의 계단을 오르는 방법의 수를 구하는 문제.예시:계단이 3개일 때 가능한 경우: (1,1,1), (1,2), (2,1) → 총 3가지 방법.점화식dp(n)=dp(n−1)+dp(n−2)초기 조건:dp(1)=1,dp(..
2025.02.24 -
동적 계획법 - 1. 개념과 기초 이해
1. 개념과 기초 이해1-1. 동적 계획법이란?📌 정의동적 계획법(Dynamic Programming, DP)이란 큰 문제를 작은 문제로 나누고, 이미 해결한 작은 문제의 결과를 저장하여 중복 계산을 피하는 최적화 기법입니다.이를 통해 연산 속도를 개선하고 효율적인 알고리즘을 설계할 수 있습니다.📌 DP를 사용하는 이유완전 탐색(Brute Force) 방식으로 문제를 해결하면 시간 복잡도가 기하급수적으로 증가하여 비효율적입니다.DP는 중복 계산을 제거하여 문제를 빠르게 해결하는 방법을 제공합니다.📌 완전 탐색 vs 분할 정복 vs 동적 계획법 알고리즘 유형 개념 장점 단점완전 탐색 (Brute Force)가능한 모든 경우를 직접 계산구현이 쉬움비효율적 (시간 복잡도가 기하급수적으로 증가)분할 정복 ..
2025.02.24 -
탐색 (목차)
탐색 알고리즘📌 1. 탐색(Search) 알고리즘 개요탐색 알고리즘이란?탐색 알고리즘의 종류 및 분류 (선형 탐색, 이진 탐색, 해싱, 그래프 탐색 등)시간 복잡도와 효율성 개념 소개탐색과 정렬의 관계🔍 실습: C에서 배열을 생성하고 기본적인 값을 출력하는 코드 작성📌 2. 선형 탐색(Linear Search)선형 탐색의 개념 및 동작 방식최선/최악/평균 시간 복잡도 분석 (O(n))선형 탐색의 한계점🔍 실습배열에서 특정 값을 찾는 선형 탐색 구현 (for 루프 사용)배열 크기 증가 시 실행 속도 비교 (clock() 사용)📌 3. 이진 탐색(Binary Search)이진 탐색 개념 및 필요 조건 (정렬된 배열)이진 탐색의 동작 원리 (중간값 기준 비교)재귀(Recursive) vs 반복(Ite..
2025.02.24 -
탐색 - 마무리 및 학습 방향
🔔 마무리 및 학습 방향1️⃣ 탐색 알고리즘 성능 최적화 방법탐색 알고리즘의 성능을 개선하려면 적절한 자료구조 선택과 효율적인 알고리즘 사용이 중요합니다.탐색 속도를 높이기 위한 주요 최적화 방법을 정리해 보겠습니다.🔹 1. 데이터 구조에 따른 최적화 데이터 유형 적합한 탐색 알고리즘성능 개선 방법정렬되지 않은 리스트선형 탐색(O(n))정렬 후 이진 탐색 사용정렬된 리스트이진 탐색(O(log n))균형 잡힌 트리 구조 사용해시 가능한 데이터해시 테이블(O(1))충돌 해결 기법 최적화그래프 탐색DFS, BFS(O(V + E))적절한 탐색 기법 사용가중치 그래프다익스트라(O((V + E) log V)), A*우선순위 큐 사용🔹 2. 시간 복잡도 최적화O(n) → O(log n) 개선정렬된 데이터 사용 ..
2025.02.24 -
탐색 - 12. 최종 프로젝트: 실전 문제 해결 (Final Project: Practical Problem Solving)
📌 12. 최종 프로젝트: 실전 문제 해결 (Final Project: Practical Problem Solving)이제까지 배운 탐색 알고리즘을 활용하여 실제 문제를 해결하는 프로젝트를 수행합니다.실제 개발 환경에서 탐색 알고리즘이 어떻게 적용되는지 이해하고, 실습을 통해 구현 능력을 향상시키는 것이 목표입니다.💡 프로젝트 예제 1: 도서 관리 시스템✔ 개요도서 관리 시스템에서 해시 테이블(Hash Table)을 이용한 빠른 도서 검색 기능을 구현합니다.도서 정보를 제목 또는 ISBN(국제 표준 도서번호) 기반으로 빠르게 탐색할 수 있도록 합니다.🔍 핵심 기능도서 정보 추가 (Insert)도서 검색 (Search)도서 삭제 (Delete)🔍 실습: 해시 테이블을 이용한 도서 검색#include..
2025.02.24 -
탐색 - 11. 탐색 알고리즘 성능 비교 프로젝트
📌 11. 탐색 알고리즘 성능 비교 프로젝트11.1 탐색 알고리즘 성능 비교 개요탐색(Search) 알고리즘은 데이터에서 특정 값을 찾는 중요한 기법입니다.각 탐색 알고리즘은 데이터 구조와 입력 크기에 따라 성능 차이가 발생합니다.💡 목표:동일한 데이터셋에서 여러 탐색 알고리즘을 실행하여 성능 비교입력 크기 변화에 따른 실행 시간 분석실생활 응용 사례 연구 (데이터베이스 검색, 웹 크롤링 등)✔ 비교할 탐색 알고리즘:선형 탐색(Linear Search) vs 이진 탐색(Binary Search)해시 테이블(Hash Table) vs 선형 탐색(Linear Search)11.2 탐색 알고리즘의 실생활 활용 사례🔹 데이터베이스 검색SQL에서 인덱스(Index)를 사용하면 탐색 속도 향상B-Tree 기반..
2025.02.24