연결된 그래프의 최단 경로를 찾는 dijkstra의 모델을 구현하려고합니다. 내가 가지고있는 그래프는 버튼을 때 그래프에서 임의로 노드를 생성하는 그래프입니다. dijkstra의 알고리즘을 윈도우에 구현하기 차트 컨트롤
- 그래프가 연결되어 있는지 확인하거나 연결 한 경우
- , 가장 짧은 경로를 찾는 한 세 가지의 다른 방법으로 결정하지 : 을 내가하고 싶은 무엇
는 다음과 같습니다. 시작과 끝 노드 사이의 거리 별 최단 경로 b. 모서리 수에 따른 최단 경로 c. 모서리의 총중량에 따른 최단 경로 (여기에 우리가 원하는 것이 더 적음 ...)
몇 가지 다른 메모.
이 DataPoints는이 차트 컨트롤에서 임의로 생성되기 때문에 실제로 정점을 생성하는 Vertex 클래스가 없습니다. 저는 주변을 검색해 왔으며 대부분의 경로 찾기 함수가 정점 클래스를 사용한다는 것을 알았습니다. 그래서 기본적으로 내 목록은 차트 컨트롤에서 노드로 채워질 것입니다.
위의 두 가지 질문을 해결하는 방법에 대한 정보를 제공하는 사람이 있습니까?
//TODO: Change to a function with return bool. Void for purposes of testing at the moment.
public void isConnected()
{
List<DataPoint> ParentPoints = new List<DataPoint>();
//Gather all the non data generator into the same point array
foreach (DataPoint pNonDG in chtGraph.Series[0].Points)
{
ParentPoints.Add(pNonDG);
}
}
당신이 사용하는 데이터 유형과 더 명확하게 할 수 고용 수있는 데이터 형식 중 일부 볼 수 있습니다? – ohmusama
지금 당장 가지고있는 모든 것이 DataPoint입니다. 그러나 이것을 "포인트"유형으로 변환 할 수 있습니다. 끝나면 포인트 좌표를 정수, 부동 소수점으로 변환 할 수 있습니다. 노드의 데이터를 가져와야 할 필요가 있다고 판단 할 때, 다른 클래스를 만들지 않았습니다. 차트 컨트롤 시리즈를 살펴보고 포인트를 찾을 수 있습니다. 나는 또한 아마추어 프로그래머이기 때문에 때로는 내가하고있는 일에서 길을 잃는다. – dvsoukup
데이터 유형을 직접 만들 수 있습니까? – ohmusama