private void calculeteEulerWay() { //рахуємо ціну шляху foreach (Edge e in _workGraph.Edges) { _weigth += e.Weight; } EulerCircle euler = new EulerCircle( _workGraph, _workGraph.Vertices.ToArray()[0]); Cycles cycles = euler.getEulerCycle(); _cycleEdges = cycles.edgesCycle; _cycleVertex = cycles.vertexCycle; }
private void startPosman() { //Перевіримо, чи граф має Ейлерів цикл EulerCircle euler = new EulerCircle(_graph, _graph.Vertices.ToArray()[0]); List <Vertex> noPartVertex = euler.getNoPartVertex(); if (noPartVertex.Count == 0) { //граф містить ейлерів цикл _workGraph = _graph; } else { createWorkGraph(noPartVertex); } calculeteEulerWay(); }