가이드라인

그래프 구현 방법

1. 그래프 클래스 정의

  • 그래프는 노드와 간선을 사용하여 네트워크 구조를 모델링하는 자료구조입니다.

  • Graph 클래스는 노드와 그 인접 노드를 저장하기 위한 딕셔너리를 포함합니다.


그래프 클래스 정의 예시
class Graph: def __init__(self): self.graph = {} # 노드와 그 인접 노드를 저장할 딕셔너리

2. 간선 추가 메소드

  • add_edge 메소드는 두 노드 사이에 양방향 간선을 추가합니다.

  • 각 노드가 그래프에 없는 경우, 노드를 추가하고 빈 리스트를 할당합니다.


간선 추가 메소드 예시
def add_edge(self, node1, node2): if node1 not in self.graph: self.graph[node1] = [] if node2 not in self.graph: self.graph[node2] = [] self.graph[node1].append(node2) self.graph[node2].append(node1)

3. 그래프 출력 메소드

  • display 메소드는 그래프의 내용을 출력합니다.

  • 각 노드와 그에 인접한 노드들을 출력하여 그래프의 구조를 보여줍니다.


그래프 출력 메소드 예시
def display(self): for node in self.graph: print(f"{node} -> {self.graph[node]}")

4. 그래프 객체 생성 및 사용

  • Graph 클래스의 인스턴스를 생성하고, 간선을 추가하여 그래프를 구성합니다.

  • display 메소드를 호출하여 그래프의 구조를 확인합니다.


그래프 객체 생성 및 사용 예시
# 그래프 객체 생성 g = Graph() # 간선 추가 g.add_edge('A', 'B') g.add_edge('A', 'C') g.add_edge('B', 'C') g.add_edge('B', 'D') # 그래프 출력 g.display()

가이드라인

AI 튜터

배포

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

실행 결과