You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mark Junker edited this page Jun 7, 2018
·
1 revision
Often, algorithms have different requirement. Some will need to iterate all the vertices while other need to access the out edges, etc… The subset of functionalities that each algorithm requires is often identified as a graph concept:
A graph concept defines the functionality required by a family of algorithms.
As functionality always comes with a price (there’s no free lunch), it is important to have a fine grained structure of graph concepts that let the algorithm writer pick just what he needs and no more. In C#, a graph concept translates naturally and elegantly to interfaces. Therefore in the following, we will use interface or concept without distinction.
There are two main families of graph concepts in QuickGraph: