मैंLINQ, एक संग्रह का अनूठा संग्रह बनाने
class Vertex{
Graph _graph;
float x;
float y;
string key;
//and some similar atributes
public IEnumerable<Edge> Edges{
get{
return _graph.Edges.Where(s => s.Source == this);
}
}
}
class Edge{
Graph _graph;
Vertex source;
Vertex target;
}
class Graph
{
private VertexCollection _vertexCollection; // extends List<Vertex>
private EdgeCollection _edgeCollection; //extends List<Edge>
public IEnumerable<Vertex> Vertexes
{
get
{
return _vertexCollection;
}
}
public IEnumerable<Edge> Edges
{
get
{
return _edgeCollection;
}
}
public IDictionary<Edge, bool> DrawableEdges
{
get
{
//want to return my uniq dictionary
}
}
Edges
और Vertexes
सूचियों
कुछ उदाहरण में एकत्र कर रहे हैं:
A-->B // edge from vertex A to B
B-->C // edge from vertex B to C
C-->A // edge from vertex C to A
A-->C // edge from vertex A to C -- this is two way edge
तो मैं IDictionary<Edge, bool>
करना चाहते हैं जो होगा किनारों को पकड़ें (ए -> बी और बी -> ए 1 की तरह होगा), और बूल - यदि यह दो तरह या नहीं है।
मुझे इसकी आवश्यकता है क्योंकि जब मैं उन्हें अब खींचता हूं, तो यह एक दूसरे के नीचे 2 तीर खींचता है। मैं बेहतर 1 तीर बनाना होगा।
तो मैं यहां बहुत फंस गया हूं ... क्या कोई मेरी मदद कर सकता है?
के साथ अपने HashSet प्रारंभ एज की परिभाषा और वर्टेक्स कक्षाएं दिखाने कृपया – sll