DevLog
close
프로필 배경
프로필 로고

DevLog

  • 분류 전체보기
    • Algorithms
      • BOJ
      • Programmers
    • Computer Science
      • algorithm
      • data structure
    • Dev
      • Java
      • Spring
      • Issue
    • Server
    • Docker
    • Project
    • Git · Github
  • 홈
  • 태그
  • 방명록

[알고리즘] 백트래킹 (BackTracking)

알고리즘 문제를 풀다 보면 "모든 경우를 다 확인해야 하는데, 경우의 수가 너무 많아서 시간 초과가 나는 상황"을 자주 마주하게 된다. 이럴 때 단순한 완전 탐색으로는 해결하기 어렵고, 불필요한 탐색을 줄이는 전략이 필요하다. 백트래킹(BackTracking)은 이러한 문제를 해결하기 위한 대표적인 기법으로, 탐색 과정에서 가능성이 없는 경로를 미리 차단하여 효율을 높이는 방법이다. 백트래킹을 이해하기 위해 먼저, 그 기반이 되는 깊이 우선 탐색(DFS)에 대해 간단히 알아보자. 깊이 우선 탐색(DFS, Depth-First Search)깊이 우선 탐색은 가능한 모든 경로를 끝까지 탐색하는 방식이다.하나의 경로를 선택하면, 그 경로의 끝까지 내려간 뒤 더 이상 진행할 수 없을 때 다른 경로로 이동한다. ..

  • format_list_bulleted Computer Science/algorithm
  • · 2026. 3. 23.
  • textsms

[알고리즘] 최소 신장 트리(MST, Minimum Spanning Tree)

신장 트리(Spanning Tree)란?신장 트리(Spanning Tree)는 연결 그래프에서 모든 정점을 포함하면서 사이클이 없는 부분 그래프를 의미한다.즉, 그래프의 일부 간선을 선택하여 모든 정점을 연결하되, 트리 구조를 유지하는 그래프이다. 신장 트리 특징신장 트리는 다음과 같은 특징을 가진다. 모든 정점이 서로 연결되어 있어야 하며, 사이클을 포함하지 않는다.정점이 n개일 때, 간선의 수는 반드시 (n-1)개이다. 간선 선택 방식에 따라 하나의 그래프에서 여러 개의 신장 트리가 존재할 수 있다.DFS 또는 BFS 탐색 과정에서 사용된 간선들만 모으면 하나의 신장 트리를 구성할 수 있다. 왜 간선이 (n-1)개 일까? 🤔트리는 사이클이 없으면서 모든 정점이 연결된 그래프이다. 이러한 구조적 특성..

  • format_list_bulleted Computer Science/algorithm
  • · 2026. 2. 21.
  • textsms

[알고리즘] 0-1 BFS

0-1 BFS란? 0-1 BFS는 BFS를 기반으로 하되, 간선의 가중치가 0 또는 1로만 주어지는 그래프에서 최단 경로를 효율적으로 구하는 알고리즘이다. 왜 0-1 BFS를 사용할까?일반적인 BFS는 모든 간선의 가중치가 동일할 때만 최단 경로를 보장한다. 간선마다 가중치가 다르면 방문 순서만으로는 올바른 최단 경로를 구할 수 없다. 특히 가중치가 0인 간선이 있다면, 더 많은 정점을 거치더라도 전체 비용이 더 작아질 수 있어서 방문 횟수가 아니라 누적 비용의 최솟값을 기준으로 탐색해야 한다. 이런 가중치 있는 최단 경로 문제에서는 보통 다익스트라(Dijkstra)를 쓴다. 다익스트라는 우선순위 큐로 항상 현재까지 비용이 가장 작은 정점을 선택해 최단 경로를 보장하지만, 이 과정의 시간 복잡도는 O(..

  • format_list_bulleted Computer Science/algorithm
  • · 2026. 1. 30.
  • textsms
  • navigate_before
  • 1
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기
    • Algorithms
      • BOJ
      • Programmers
    • Computer Science
      • algorithm
      • data structure
    • Dev
      • Java
      • Spring
      • Issue
    • Server
    • Docker
    • Project
    • Git · Github
최근 글
인기 글
최근 댓글
태그
  • #github
  • #백준
  • #이분 탐색
  • #Spring Security
  • #너비 우선 탐색
  • #스프링
  • #자바
  • #java
  • #spring
  • #BOJ
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바