스택으로 히스토그램 최대 직사각형 찾기
April 03, 2026히스토그램에서 최대 넓이의 직사각형을 스택으로 O(N)에 구하는 알고리즘과, 2D 격자 문제(백준 3050 집들이)에 적용하는 방법까지 단계별로 정리
Written by Mingyu Park | Algorithms & Tech Blog
꾸준히 적어보는 공부 블로그
히스토그램에서 최대 넓이의 직사각형을 스택으로 O(N)에 구하는 알고리즘과, 2D 격자 문제(백준 3050 집들이)에 적용하는 방법까지 단계별로 정리
클라우드 서비스 설계/개발, 비즈니스 솔루션 구현, 아키텍처 전략 수립에 필요한 핵심 기술들을 정리
구간 값을 효율적 으로 저장하고 탐색하는 세그먼트 트리의 개념 정리
Docker의 개념, VM과의 차이, 이미지/컨테이너/볼륨 등 핵심 구성요소, Dockerfile 작성법, 주요 명령어, Docker Compose까지 실무 중심으로 정리
세 점의 방향을 판별하는 CCW 기하 알고리즘의 개념과 외적을 이용한 구현 방법을 정리
트라이(Trie)의 개념, 삽입/탐색 동작 원리, Python 구현, 자동완성·접두사 탐색 활용법, 시간복잡도까지 단계별로 정리
외판원 순회 문제(TSP)의 개념부터 브루트포스의 한계, 비트마스킹 DP를 활용한 O(n²·2ⁿ) 풀이, 경로 복원까지 단계별로 정리
최소 신장 트리(MST)를 구하는 프림 알고리즘의 개념, 동작 원리, 우선순위 큐를 활용한 Python 구현까지 단계별로 정리
정보처리기사 실기 코딩 문제에서 자주 출제되는 C언어(포인터, 구조체, 재귀, 전처리)와 Java(OOP, 상속, 형 변환, 컬렉션) 핵심 개념을 실수 포인트 중심으로 정리합니다.
스패닝 트리의 개념부터 최소 스패닝 트리(MST)를 구하는 크루스칼 알고리즘의 동작 원리, Union-Find를 이용한 사이클 감지, Python/C++ 구현까지 정리
분할정복의 개념과 대표 알고리즘(병합 정렬, 퀵 정렬, 이진 검색 등)을 정리
이진 트리의 네 가지 순회 방법(전위, 중위, 후위, 레벨 순회)의 개념과 동작 원리, Python 구현까지 단계별로 정리
트리 DP의 핵심 개념, 상태 설계 방법, 선택/미선택 DP, 트리의 지름·높이, 재루팅 DP(Re-rooting)까지 유형별로 정리
위상 정렬의 개념, 진입차수 기반 Kahn's Algorithm(BFS), DFS 기반 구현, 사이클 감지까지 단계별 시각화와 함께 정리
두 노드가 같은 집합에 속하는지 판별하는 유니온 파인드 알고리즘의 개념, Union/Find 연산, 경로 압축 최적화, Python 구현을 정리
모든 노드 쌍 간 의 최단 경로를 구하는 플로이드 워셜 알고리즘의 개념, 점화식, 동작 원리, Python 구현을 정리
비트 연산자(AND, OR, XOR, NOT, SHIFT)의 동작 원리, 비트마스크 패턴, 아스키코드 변환 함수, 그리고 코딩테스트에서 자주 쓰이는 실전 활용법까지 정리
우선순위 큐의 개념, 힙 자료구조의 동작 원리, Python heapq 모듈 사용법(최소 힙/최대 힙/커스텀 정렬)까지 정리
React 전역 상태관리의 필요성부터 Redux(Redux Toolkit)와 Zustand의 개념, 구현 방법, 차이점, 선택 기준까지 실무 예제 중심으로 정리
환율 예측 프로젝트에서 사용한 시계열 분석 모델 3가지(ARIMA, SARIMA, LSTM)를 개념부터 구현까지 정리
WebSocket의 개념부터 순수 WebSocket 구현, Spring STOMP + JWT 인증, Redis 기반 확장 아키텍처 정리
JWT 인증 방식의 개념부터 Access Token/Refresh Token 관리 전략, Axios 인터셉터를 활용한 자동 갱신, 보안 고려사항까지 프론트엔드 로그인 구현 전반을 정리합니다.
Next.js의 개념, 렌더링 방식(SSG/SSR/ISR/CSR), App Router, 라우팅, 데이터 패칭, 최적화까지 예제 코드와 함께 정리
음수 가중치와 음수 순환까지 처리할 수 있는 벨만-포드 알고리즘의 개념, 동작 원리, 다익스트라와의 비교, Python 구현을 정리
TypeScript의 타입 시스템, 제네릭, 유틸리티 타입, 타입 가드, interface vs type, 조건부/맵드 타입까지 실무 예제 중심으로 정리
그래프에서 최단 경로를 구하는 다익스트라 알고리즘의 개념, 동작 원리, 순차 탐색과 우선순위 큐를 이용한 두 가지 구현 방법을 정리
이진 탐색의 개념과 동작 원리, 반복문/재귀 구현, 경계값 탐색(Lower/Upper Bound), Python bisect 라이브러리 활용까지 정리
DP의 개념, 적용 조건, Bottom-Up과 Top-Down 방식 정리
