그래프 4

[Python] matplotlib(1)

matplotlib 개요 matplotlib는 파이썬의 시각화 라이브러리로, 다양한 그래프와 차트를 생성하는 데 사용된다. 보통 numpy 혹은 pandas와 묶어서 배열을 바로 그래프로 시각화할 때 자주 사용하는데, 이번 시간에는 간단한 예제들을 통해 어떻게 그래프를 플로팅하는지 알아보도록 하자. 본문 설치 및 임포트 pip install matplotlib 커맨드창에 matplotlib를 설치하기 위해 해당 명령어를 실행시키자. from matplotlib import pyplot as plt import matplotlib.pyplot as plt 기본적인 그래프 모듈은 pyplot을 사용하며, 임포트는 관례적으로 plt를 약어로 사용한다. 그래프 그리기 pyplot.plot() pyplot.sho..

Language/Python 2023.09.12

[알고리즘] 그래프 순회 문제

그래프 탐색개요 그래프 탐색(graph traversal problem), 또는 그래프 순회 문제(graph search problem)는 그래프의 일련의 정점을 체계적으로 방문하는 문제를 의미한다. 주어진 그래프 G = 에서 특정 정점 s를 시작점으로 하여, 모든 정점 v ∈ V를 한 번씩 방문하는 것이 이 문제의 목표다. 이 과정에서 방문된 정점의 순서는 탐색 알고리즘에 따라 달라진다. 탐색은 주로 그래프의 구조를 이해하거나, 특정 경로를 찾는 등의 목적으로 사용된다. 이를 통해 네트워크 연결 상태, 최단 경로, 사이클 등 그래프의 다양한 특성을 분석할 수 있다.  그래프 탐색은 다양한 응용 분야에서 중요한 역할을 수행한다. 예를 들어, 네트워크 라우팅, SNS에서 친구 추천, 웹 크롤러 등에서 그래..

CS/알고리즘 2023.06.14

[알고리즘] 그리디 알고리즘 - 그래프 컬러링

그래프 컬러링개요 그래프 컬러링(graph coloring) 문제는 주어진 그래프에서 서로 인접한 정점끼리 같은 색을 갖지 않도록 모든 정점에 색상을 지정하는 것이다. 이때 에지의 가중치는 사용하지 않는다. 컬러링의 주요 종류는 다음과 같다. 정점 컬러링: 가장 기본적인 형태의 그래프 컬러링. 인접한 정점들은 다른 색깔을 가져야 한다는 규칙을 따름.에지 컬러링: 각 에지를 색칠하는 데 중점을 두며, 어떤 두 에지도 같은 색깔을 가질 수 없음. 이 규칙은 에지가 공유하는 정점에도 적용됨.착색수(chromatic number): 그래프를 적절히 색칠하는 데 필요한 최소 색깔 수 (NP-완전 문제)  그래프 컬러링은 택시 예약 스케줄 작성, 스도쿠 퍼즐 풀기, 시험 시간표 작성 등을 그래프로 모델링한 후 컬러..

CS/알고리즘 2023.05.30

[자료구조] 그래프

그래프(Graph)개요 지금까지 공부한 트리는 계층적인 데이터를 표현하기에 적합한 자료구조지만, 원형 또는 순환적인 종속성을 표현할 수 없다. 예를 들어 서울과 광역시간의 이동 정보를 생각해 보면, 특정 장소에서 다른 장소로 이동하기 위한 다양한 경로가 존재할 수 있다. 이러한 경우엔 노드와 간선(edge)을 모아놓은 자료구조인 그래프를 사용하는 것이 더 적합하다. 그래프는 순환 구조를 가지므로, 이러한 경우에도 경로를 표현할 수 있다. 따라서, 계층적인 데이터가 아닌 경우엔 그래프를 사용하는 것이 더욱 유용할 것이다.종류 그래`프는 다양한 종류가 있으며, 먼저 무방향(Undirected) 그래프와 방향(Directed) 그래프로 나뉜다. 무방향 그래프에서는 간선이 양방향으로 연결되어 있으며, 방향 그래..

CS/자료구조 2023.04.24