本文整理汇总了C#中IGraph.Edges方法的典型用法代码示例。如果您正苦于以下问题:C# IGraph.Edges方法的具体用法?C# IGraph.Edges怎么用?C# IGraph.Edges使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IGraph
的用法示例。
在下文中一共展示了IGraph.Edges方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Stringify
internal static string Stringify(IGraph graph)
{
StringBuilder sb = new StringBuilder();
sb.AppendLine($"{graph.Vertices()} vertices, {graph.Edges()} edges");
for (int v = 0; v < graph.Vertices(); v++)
{
sb.AppendLine($"Vertex {v} connects to: {string.Join(" ", graph.AdjecentVertices(v))}");
}
return sb.ToString();
}
示例2: Dijkstra
public Dijkstra(IGraph graph)
{
// verifica peso negativo
foreach (var edge in graph.Edges())
{
if (edge.Weight < 0)
throw new Exception($"edge {edge} has negative weight");
}
// inicializa os arrays
_distanceTo = new double[graph.VerticesCount + 1];
_edgeTo = new Edge[graph.VerticesCount + 1];
for (var i = 0; i < graph.VerticesCount; i++)
{
_distanceTo[i] = double.PositiveInfinity;
}
_priorityQueue = new MinPriorityQueue<double>(graph.VerticesCount+1);
_graph = graph;
}