알고리즘 문제를 풀다 보면 그래프를 그려봐야 하는 경우 

 

손으로 직접 그리면 번거롭고 노드 갯수가 많은 경우 그리기가 힘들 수 있는데, 이를 간단하게 해결해주는 사이트가 있다.

 

 

 

https://csacademy.com/app/graph_editor/

 

CS Academy

 

csacademy.com

 

csacademy라는 사이트는 코드포스와 탑코더처럼 온라인 알고리즘 콘테스트를 열어주는 그런 사이트인데, 거기 툴중에 그래프 에디터가 있습니다.

 

사용방법도 직관적이고, 유용합니다.

 

왼쪽에 있는 창에 Graph Data를 쓰면 됩니다. Node Count이런것들은 자동으로 생성되므로, 크게 신경쓰지 않아도 되고

 

한 줄에 하나의 숫자만 쓰면, Node가 있음을 선언하는 것이고, 한 줄에 두개의 숫자를 쓰면 왼쪽 노드 번호에서 오른쪽 번호 노드로 가는 Edge가 있는 것을 알려주는 것입니다.

 

무향/방향 그래프임을 위에 Undirected / Directed 버튼으로 결정할 수 있습니다.

 

 

오른쪽 트레이에 보면 상단에 5개 정도 패널이 있는데 각각 모드를 설정할 수 있습니다.

 

Force모드면 노드를 드래그 앤 드롭하면 탄력적으로 움직이고, Draw모드를 하면 이동하고 위치가 고정됩니다.

 

Edit모드는 이미지 상에서 노드 이름을 변경하거나 Edge의 Weight값을 결정하는 등 여러가지가 가능합니다.

 

특히나 Config 패널로 가서 Run Command -> Arrange as Tree로 하면 트리모양으로 그래프를 배열해줍니다.

 

싸이클이 있는 그래프이므로 완전한 Tree모양으로 배열해주진 않지만, 얼추 트리에 가까운 모양으로 배열해줍니다.

 

백문이 불여일견인 툴이므로, 접속해서 애용해봅시다.

+ Recent posts