CHUCK CHUCK 박사

잼잼 개발자

[Algorithm] N-Queens Problem Algorithm

N-Queens Problem 알고리즘

N-Queens 문제 N-Queens 문제는 N × N 크기의 체스판 위에 N개의 퀸을 배치하는 문제입니다. 여기서 퀸은 같은 행, 같은 열, 또는 대각선 상에 다른 퀸이 있을 수 없습니다. 목표는 체스판 위에 모든 퀸이 서로 공격하지 않도록 배치하는 것입니다. 이 문제는 백트래킹(Backtracking) 알고리즘을 통해 해결할 ...

[Algorithm] Unique Paths Problem Algorithm

Unique 경로 알고리즘

Unique Paths 문제 설명 Unique Paths 문제는 로봇이 2D 격자판의 왼쪽 상단에서 오른쪽 하단까지 이동하는 경로의 수를 구하는 문제입니다. 로봇은 오직 오른쪽 또는 아래로만 이동할 수 있습니다. 주어진 격자판의 크기가 m x n일 때, 로봇이 목적지에 도달하는 모든 가능한 경로의 수를 찾는 것이 목표입니다. 예를...

[Algorithm] Jump Game Algorithm

점프 게임 알고리즘

Jump Game? Jump Game는 배열 내에서 이동할 수 있는 최대 범위가 주어진 상황에서 마지막 인덱스에 도달할 수 있는지 여부를 확인하는 문제입니다. 배열의 각 요소는 그 위치에서 몇 칸까지 점프할 수 있는지를 나타냅니다. 예를 들어, 배열 [2, 3, 1, 1, 4]가 주어지면 첫 번째 위치에서 최대 두 칸까지 점프할 ...

[Algorithm] Square Matrix In-Place Rotation Algorithm

정방 행렬 회전 알고리즘

제자리에서 정사각 행렬 회전 (Square Matrix In-Place Rotation) 정사각 행렬의 제자리 회전은 2D 정사각 행렬(예: 이미지)을 시계 방향이나 반시계 방향으로 90도 회전시키는 알고리즘입니다. 제자리에서 수행한다는 것은 추가 메모리를 사용하지 않고, 기존 행렬 안에서 회전을 완료한다는 의미입니다. 회전의 규...

[Algorithm] Tower of Hanoi Algorithm

하노이의 탑 알고리즘

하노이의 탑 하노이의 탑 (Tower of Hanoi)는 고전적인 재귀적 문제로, 세 개의 기둥과 여러 개의 원반으로 이루어져 있습니다. 이 문제의 목표는 한 기둥에 쌓인 원반을 규칙을 지켜가며 다른 기둥으로 모두 옮기는 것입니다. 규칙: 한 번에 하나의 원반만 이동할 수 있다. 더 큰 원반은 더 작은 원반 위에 놓을 ...

[Algorithm] Graphs - Travelling Salesman Problem(TSP) Algorithm

그레프 - 외판원 문제 알고리즘

외판원 문제 (Traveling Salesman Problem, TSP)? 외판원 문제 (TSP)는 주어진 도시 집합에서 각 도시를 한 번만 방문하고 다시 출발 도시로 돌아오는 최소 비용의 경로를 찾는 문제입니다. TSP는 조합 최적화 문제 중 하나로, NP-hard 문제로 알려져 있습니다. 즉, 문제의 크기가 커짐에 따라 가능한 ...

[Algorithm] Graphs - Strongly Connected Component(SCC) Algorithm

그레프 - 강결합 컴포넌트 알고리즘

Strongly Connected Components (SCC)? Strongly Connected Component(SCC)는 방향성 그래프(Directed Graph)에서, 모든 정점들이 서로 도달 가능한 서브그래프(subgraph)를 말합니다. 즉, 한 정점에서 시작해서 다른 모든 정점에 도달할 수 있고, 그 반대 방향으로도 ...

[Algorithm] Graphs - Hamiltonian Path Algorithm

그레프 - 해밀토니안 경로 알고리즘

Hamiltonian Path? 해밀토니안 경로(Hamiltonian Path)는 그래프 이론에서, 그래프의 모든 정점을 정확히 한 번씩만 방문하는 경로를 의미합니다. 만약 경로가 첫 번째 정점과 마지막 정점을 동일하게 연결한다면, 이를 해밀토니안 순환(Hamiltonian Circuit 또는 Cycle)이라고 부릅니다. 그래프에...

[Algorithm] Graphs - Eulerian Path Algorithm

그레프 - 오일러 회로 알고리즘

Eulerian Path? Eulerian Path는 그래프 이론에서, 그래프의 모든 간선을 정확히 한 번씩만 통과하는 경로를 의미합니다. 만약 출발점과 도착점이 동일하고 모든 간선을 한 번씩만 지나는 경우, 이를 Eulerian Circuit(오일러 회로)라고 부릅니다. Eulerian Path가 존재하기 위한 조건은: ...

[Algorithm] Graphs - Bridges in Graph Algorithm

그레프 - 단절선 알고리즘

Bridges in Graph Bridge(다리)는 그래프 내의 간선(edge) 중 하나로, 이 간선을 제거하면 그래프가 둘 이상의 부분으로 분리됩니다. Bridge는 네트워크의 취약한 연결을 찾아내는 데 매우 유용합니다. 즉, 네트워크에서 끊기면 전체 연결이 망가지는 중요한 연결을 찾아내는 데 사용됩니다. 사용 사례: 네...