C # - определение хэш-сет с пользовательским ключом
Я используюHashSet
а такжеDictionary
в C # для реализации структуры графа. У меня проблема с уникальностьюHashSet
элементы, когдаHashSet
Ключ - это индивидуальный класс. Здесь у меня есть:
public class Point
{
public int x { get; set; }
public int y { get; set; }
}
public class Vertex
{
public Vertex(Point point)
{
VertexLabel = point;
}
public Point VertexLabel { get; private set; }
}
public class Edge
{
public Edge(Vertex to, Vertex from, double weight)
{
FromVertex = from;
ToVertex = to;
Weight = weight;
}
public Vertex FromVertex { get; private set; }
public Vertex ToVertex { get; private set; }
public double Weight { get; private set; }
}
public class Graph
{
public Graph()
{
_Vertexes = new HashSet();
_VertexEdgeMapping = new Dictionary();
}
private HashSet _Vertexes;
private Dictionary _VertexEdgeMapping;
}
Проблема в том, что, когда у меня одни и те же вершины, и я хочу добавить их в граф, они дублируются. как я могу определить способ, которымHashSet
поймете уникальность моих вершин?