- Problem 1: Minimum Cost to Connect Sticks
설명: 주어진 막대들을 모두 연결하는 데 필요한 최소 비용을 계산합니다.
핵심 개념: 그리디 알고리즘, 우선순위 큐.
링크: LeetCode 1167 - Problem 2: Path With Minimum Effort
설명: 2D 그리드에서 시작점부터 도착점까지 이동할 때, 경로의 최대 고도 차이가 최소가 되는 경로를 찾습니다.
핵심 개념: 그래프, 최소 신장 트리, 다익스트라 알고리즘.
링크: LeetCode 1631 - Problem 3: Connecting Cities With Minimum Cost
설명: 도시들을 연결하는 도로의 비용이 주어질 때, 모든 도시를 연결하는 최소 비용을 계산합니다.
핵심 개념: 최소 신장 트리, 크루스칼 알고리즘, 유니온 파인드.
링크: LeetCode 1135 - Problem 4: Optimize Water Distribution in a Village
설명: 마을에 물을 공급하기 위해 우물과 파이프를 설치하는 최소 비용을 계산합니다.
핵심 개념: 그래프, 최소 신장 트리, 프림 알고리즘.
링크: LeetCode 1168 - Problem 5: Min Cost to Connect All Points
설명: 2D 평면상의 모든 점을 연결하는 최소 비용을 계산합니다.
핵심 개념: 그래프, 최소 신장 트리, 프림 알고리즘.
링크: LeetCode 1584 - Problem 6: Minimum Number of Vertices to Reach All Nodes
설명: 모든 노드에 도달하기 위해 필요한 최소 시작 노드의 수를 찾습니다.
핵심 개념: 그래프, 진입 차수, 위상 정렬.
링크: LeetCode 1557 - Problem 7: Critical Connections in a Network
설명: 네트워크에서 제거 시 전체 연결을 끊는 중요한 연결들을 찾습니다.
핵심 개념: 그래프, 타잔 알고리즘, 브리지 찾기.
링크: LeetCode 1192 - Problem 8: Redundant Connection
설명: 트리에 간선을 추가하여 사이클을 형성하는 간선을 찾습니다.
핵심 개념: 그래프, 유니온 파인드.
링크: LeetCode 684 - Problem 9: Redundant Connection II
설명: 루트가 있는 트리에 간선을 추가하여 사이클을 형성하는 간선을 찾습니다.
핵심 개념: 그래프, 유니온 파인드.
링크: LeetCode 685 - Problem 10: Network Delay Time
설명: 네트워크에서 특정 노드로부터 모든 노드로 신호가 전달되는 데 걸리는 시간을 계산합니다.
핵심 개념: 그래프, 다익스트라 알고리즘.
링크: LeetCode 743 - Problem 11: Is Graph Bipartite?
설명: 주어진 그래프가 이분 그래프인지 확인합니다.
핵심 개념: 그래프 탐색 (DFS, BFS).
링크: LeetCode 785 - Problem 12: Flood Fill
설명: 이미지에서 특정 영역을 주어진 색으로 채웁니다.
핵심 개념: 그래프 탐색, DFS, BFS.
링크: LeetCode 733 - Problem 13: Find if Path Exists in Graph
설명: 무방향 그래프에서 두 노드 간 경로가 존재하는지 확인합니다.
핵심 개념: 그래프 탐색 (DFS, BFS).
링크: LeetCode 1971 - Problem 14: Number of Connected Components in an Undirected Graph
설명: 무방향 그래프에서 연결 요소의 수를 계산합니다.
핵심 개념: 유니온 파인드, DFS.
링크: LeetCode 323 - Problem 15: Count Components
설명: 그래프에서 연결된 컴포넌트의 개수를 계산합니다.
핵심 개념: 유니온 파인드.
링크: LeetCode 547 - Problem 16: The Earliest Moment When Everyone Become Friends
설명: 모든 사람이 친구가 되는 데 걸리는 최소 시간을 계산합니다.
핵심 개념: 유니온 파인드.
링크: LeetCode 1101 - Problem 17: Find the Town Judge
설명: 마을의 유일한 판사를 찾습니다.
핵심 개념: 그래프, 진입 차수.
링크: LeetCode 997 - Problem 18: Friend Circles
설명: 친구 네트워크의 개수를 계산합니다.
핵심 개념: DFS, 유니온 파인드.
링크: LeetCode 547 - Problem 19: Shortest Path in Binary Matrix
설명: 2D 이진 행렬에서 시작점에서 끝점까지의 최단 경로를 계산합니다.
핵심 개념: 그래프 탐색, BFS.
링크: LeetCode 1091 - Problem 20: Max Area of Island
설명: 2D 격자에서 가장 큰 섬의 면적을 계산합니다.
핵심 개념: DFS, BFS.
링크: LeetCode 695 - Problem 21: Shortest Distance to a Character
설명: 주어진 문자열에서 특정 문자의 최단 거리를 찾습니다.
핵심 개념: 배열 탐색, 최단 거리 계산.
링크: LeetCode 821 - Problem 22: Find Center of Star Graph
설명: 스타 그래프의 중심 노드를 찾습니다.
핵심 개념: 그래프.
링크: LeetCode 1791 - Problem 23: Clone Graph
설명: 주어진 그래프의 복사본을 생성합니다.
핵심 개념: 그래프 탐색, BFS, DFS.
링크: LeetCode 133 - Problem 24: Count Pairs of Nodes
설명: 그래프에서 두 노드 사이의 연결 가능성을 계산합니다.
핵심 개념: 유니온 파인드.
링크: LeetCode 2316 - Problem 25: Count Good Nodes in Binary Tree
설명: 이진 트리에서 "좋은" 노드의 개수를 계산합니다.
핵심 개념: DFS, 이진 트리.
링크: LeetCode 1448
'Coding Test > 알고리즘 이론' 카테고리의 다른 글
경로, 최소거리, 그래프 탐색 등(총 40문제) (0) | 2025.01.05 |
---|---|
최소신장트리-미디엄 (25문제) (1) | 2025.01.04 |
"최소 비용 신장 트리(Minimum Spanning Tree: MST)"를 찾는 방법 (0) | 2025.01.04 |
탐욕 - Greedy 알고리즘 - leet code 35문제(20+15) (2) | 2025.01.03 |
Fractional Knapsack 및 유사 문제들 (5문제) (0) | 2025.01.03 |