MoonTools.Graph/Graph/UndirectedWeightedGraph.cs

20 lines
670 B
C#
Raw Permalink Normal View History

2020-02-21 02:43:25 +00:00
namespace MoonTools.Graph
2019-10-24 04:29:26 +00:00
{
2019-10-24 08:10:49 +00:00
public class UndirectedWeightedGraph<TNode, TEdgeData> : DirectedWeightedGraph<TNode, TEdgeData>, IWeightedGraph<TNode, TEdgeData> where TNode : System.IEquatable<TNode>
2019-10-24 04:29:26 +00:00
{
public override void AddEdge(TNode v, TNode u, int weight, TEdgeData edgeData)
{
base.AddEdge(v, u, weight, edgeData);
base.AddEdge(u, v, weight, edgeData);
}
public override void AddEdges(params (TNode, TNode, int, TEdgeData)[] edges)
{
foreach (var edge in edges)
{
AddEdge(edge.Item1, edge.Item2, edge.Item3, edge.Item4);
}
}
}
2020-02-21 02:43:25 +00:00
}