Algorithms
입력 조건을 이용해 불필요한 계산을 제거한다
탐색, 정렬, 그래프, 그리디와 동적 계획법을 상태 변화·정당성·시간과 공간 비용으로 분석합니다.
세부 주제 소개Foundation
탐색, 정렬, 그래프, 그리디와 동적 계획법을 상태 변화·정당성·시간과 공간 비용으로 분석합니다.
CS 세부 주제7개 보기
대표 주제로 바로 찾기
Foundations
Search & Ordering
Graph
최신글/ 11
BFS: 같은 거리 layer를 큐로 보존하는 Java 최단 경로 탐색
무가중 그래프에서 발견 시점 방문 처리와 FIFO layer 불변식이 최소 hop을 보장하는 이유를 증명하고, primitive queue·거리·부모 배열의 메모리를 분석한다.
2026. 08. 06. · 12분 읽기DFS: 명시적 스택으로 재귀 깊이와 Java 메모리를 통제하기
한 갈래를 끝까지 탐색하는 불변식을 명시적 primitive 스택으로 구현하고, 재귀 frame·방문 시점·순회 순서·BFS와의 메모리 차이를 분석한다.
2026. 08. 06. · 11분 읽기Java 필수 알고리즘 로드맵: 이름이 아니라 입력 계약으로 고르는 순서
탐색·자료구조·정렬·그래프·최적화 기법을 한 글에 축약하지 않고, 입력 형태와 질의·갱신 비용으로 다음 학습과 구현 선택을 결정하는 로드맵이다.
2026. 08. 06. · 12분 읽기그리디: 가장 빨리 끝나는 구간 선택을 교환 논증으로 증명하기
활동 선택 문제에서 종료 시간이 가장 이른 선택이 최적인 이유를 교환 논증으로 증명하고, 동전 반례로 지역 최선의 적용 한계와 Java 정렬·메모리 비용을 확인한다.
2026. 08. 06. · 11분 읽기다익스트라: 비음수 edge에서 거리 확정을 증명하는 Java 최단 경로
relaxation·최소 우선순위·stale entry가 만드는 거리 불변식을 증명하고, 음수 반례·long overflow·객체 allocation·대안 선택까지 추적한다.
2026. 08. 06. · 14분 읽기동적 계획법: 상태·점화식·복원으로 동전 최소 개수를 증명하기
동전 최소 개수 문제를 상태와 점화식으로 정의하고, bottom-up 계산·불가능 sentinel·해 복원·greedy 반례·메모리 최적화의 대가를 Java로 검증한다.
2026. 08. 06. · 12분 읽기선형 탐색: 정렬 없이 첫 답을 보장하는 Java 순차 스캔
선형 탐색을 느린 기준선으로 치부하지 않고, 첫·마지막 위치 계약과 조기 종료 정당성, 연속 primitive 배열의 메모리 비용 및 index 구축의 손익분기점을 분석한다.
2026. 08. 06. · 10분 읽기알고리즘 복잡도: Big-O 라벨에서 Java 실행 비용 모델까지
입력 크기와 기본 연산을 먼저 정의하고, 점근 표기·amortized cost·보조 공간을 Java 객체 할당 및 실제 측정과 분리해 해석한다.
2026. 08. 06. · 12분 읽기위상 정렬: 진입 차수 0의 의미와 cycle을 검출하는 Java Kahn 알고리즘
DAG 의존 관계에서 indegree와 ready queue의 불변식을 추적하고, 결과 길이로 cycle을 검출하며 결정성·메모리·배포 운영 기준까지 연결한다.
2026. 08. 06. · 11분 읽기이진 탐색: 반열린 구간 불변식으로 첫 위치까지 찾는 Java 구현
정렬 전제와 반열린 후보 구간을 명시하고, lower bound에서 첫 중복 위치·삽입 위치·overflow-safe midpoint가 왜 맞는지 증명한다.
2026. 08. 06. · 10분 읽기