0

나는 여러 알고리즘 및 데이터 구조를 성공적으로 구현했습니다. 그러나 그래프를 나타낼 필요가 있기 때문에 그래프 알고리즘을 구현하는 방법을 잘 모르겠습니다. 나는 알고리즘과 데이터 구조를 도입에서부터 알고리즘에 이르기까지 cormen 등으로 구현하려고합니다. al. 그러나 많은 알고리즘은 그래프를 입력으로 사용하거나 트리 구조를 입력으로 사용하므로 텍스트로만 제공 할 수는 없습니다. dijkstra, bellman-ford, floyd-warshall, kruskal 등을 구현하는 방법을 모르겠습니다. 가중치 또는 방향 그래프 일지라도 모든 그래프를 매트릭스로 나타낼 수 있습니까? 때문에 매트릭스에 대한 다차원 배열을 사용할 수 있다고 생각하기 때문에. 0 또는 1 가장자리가 있는지 여부를 나타낼 수 있지만 실제로 어떻게 행렬을 사용하여 모든 그래프를 나타낼 지 모르겠다 생각합니다. 알고리즘이 그것을 입력으로 사용한다면 이진 트리는 어떨까요?알고리즘 및 데이터 구조 구현

미리 감사드립니다.

답변

0

이것은 매우 자유로운 질문입니다. 대답은 원하는 작업의 종류에 따라 다릅니다.

간단한 그래프를 나타내는 한 가지 방법은 NxN 배열입니다. 각 요소는 가장자리를 나타냅니다. 분명히 하나의 삼각형이 필요하며 다른 절반을 무시하거나 정보를 복제하여 쉽게 조회 할 수 있습니다.

매우 많은 수의 정점이있는 희소 그래프의 경우 두 개의 링크를 포함 할 수 있도록 두 개의 링크가있는 노드로 가장자리를 나타낼 수 있습니다. 각 꼭지점은 서로 연결된 모서리 목록의 헤드를 갖습니다.

관련 문제