Skip to content

Commit

Permalink
Merge branch 'develop' into beta
Browse files Browse the repository at this point in the history
  • Loading branch information
justcoding121 committed Apr 21, 2021
2 parents 3fce183 + d78f492 commit b48149e
Show file tree
Hide file tree
Showing 8 changed files with 151 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ <h4 id="Advanced_Algorithms_Graph_HopcroftKarpMatching_1_GetMaxBiPartiteMatching
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public List&lt;MatchEdge&lt;T&gt;&gt; GetMaxBiPartiteMatching(IGraph&lt;T&gt; graph)</code></pre>
<pre><code class="lang-csharp hljs">public HashSet&lt;MatchEdge&lt;T&gt;&gt; GetMaxBiPartiteMatching(IGraph&lt;T&gt; graph)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
Expand Down Expand Up @@ -176,7 +176,7 @@ <h5 class="returns">Returns</h5>
</thead>
<tbody>
<tr>
<td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.collections.generic.list-1">List</a>&lt;<a class="xref" href="Advanced.Algorithms.Graph.MatchEdge-1.html">MatchEdge</a>&lt;T&gt;&gt;</td>
<td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.collections.generic.hashset-1">HashSet</a>&lt;<a class="xref" href="Advanced.Algorithms.Graph.MatchEdge-1.html">MatchEdge</a>&lt;T&gt;&gt;</td>
<td></td>
</tr>
</tbody>
Expand Down
79 changes: 73 additions & 6 deletions docs/api/Advanced.Algorithms.Graph.MatchEdge-1.html
Original file line number Diff line number Diff line change
Expand Up @@ -96,18 +96,12 @@ <h5>Inherited Members</h5>
<div>
<a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.tostring#System_Object_ToString">Object.ToString()</a>
</div>
<div>
<a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_">Object.Equals(Object)</a>
</div>
<div>
<a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_System_Object_">Object.Equals(Object, Object)</a>
</div>
<div>
<a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.referenceequals#System_Object_ReferenceEquals_System_Object_System_Object_">Object.ReferenceEquals(Object, Object)</a>
</div>
<div>
<a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gethashcode#System_Object_GetHashCode">Object.GetHashCode()</a>
</div>
<div>
<a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gettype#System_Object_GetType">Object.GetType()</a>
</div>
Expand Down Expand Up @@ -222,6 +216,79 @@ <h5 class="propertyValue">Property Value</h5>
</tr>
</tbody>
</table>
<h3 id="methods">Methods
</h3>


<a id="Advanced_Algorithms_Graph_MatchEdge_1_Equals_" data-uid="Advanced.Algorithms.Graph.MatchEdge`1.Equals*"></a>
<h4 id="Advanced_Algorithms_Graph_MatchEdge_1_Equals_System_Object_" data-uid="Advanced.Algorithms.Graph.MatchEdge`1.Equals(System.Object)">Equals(Object)</h4>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override bool Equals(object obj)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object">Object</a></td>
<td><span class="parametername">obj</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.boolean">Boolean</a></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.equals#System_Object_Equals_System_Object_">Object.Equals(Object)</a></div>


<a id="Advanced_Algorithms_Graph_MatchEdge_1_GetHashCode_" data-uid="Advanced.Algorithms.Graph.MatchEdge`1.GetHashCode*"></a>
<h4 id="Advanced_Algorithms_Graph_MatchEdge_1_GetHashCode" data-uid="Advanced.Algorithms.Graph.MatchEdge`1.GetHashCode">GetHashCode()</h4>
<div class="markdown level1 summary"></div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override int GetHashCode()</code></pre>
</div>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.int32">Int32</a></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><a class="xref" href="https://docs.microsoft.com/dotnet/api/system.object.gethashcode#System_Object_GetHashCode">Object.GetHashCode()</a></div>
</article>
</div>

Expand Down
3 changes: 3 additions & 0 deletions docs/api/Advanced.Algorithms.Graph.html
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,9 @@ <h4><a class="xref" href="Advanced.Algorithms.Graph.FloydWarshallShortestPath-2.
<h4><a class="xref" href="Advanced.Algorithms.Graph.FordFulkersonMaxFlow-2.html">FordFulkersonMaxFlow&lt;T, W&gt;</a></h4>
<section><p>A ford-fulkerson max flox implementation on weighted directed graph using
adjacency list representation of graph and residual graph.</p>
</section>
<h4><a class="xref" href="Advanced.Algorithms.Graph.HopcroftKarpMatching-1.html">HopcroftKarpMatching&lt;T&gt;</a></h4>
<section><p>Compute Max BiParitite Edges using Hopcroft Karp algorithm.</p>
</section>
<h4><a class="xref" href="Advanced.Algorithms.Graph.JohnsonsShortestPath-2.html">JohnsonsShortestPath&lt;T, W&gt;</a></h4>
<section><p>A Johnson&apos;s shortest path algorithm implementation.</p>
Expand Down
3 changes: 3 additions & 0 deletions docs/api/toc.html
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,9 @@
<li>
<a href="Advanced.Algorithms.Graph.FordFulkersonMaxFlow-2.html" name="" title="FordFulkersonMaxFlow&lt;T, W&gt;">FordFulkersonMaxFlow&lt;T, W&gt;</a>
</li>
<li>
<a href="Advanced.Algorithms.Graph.HopcroftKarpMatching-1.html" name="" title="HopcroftKarpMatching&lt;T&gt;">HopcroftKarpMatching&lt;T&gt;</a>
</li>
<li>
<a href="Advanced.Algorithms.Graph.IAStarHeuristic-2.html" name="" title="IAStarHeuristic&lt;T, W&gt;">IAStarHeuristic&lt;T, W&gt;</a>
</li>
Expand Down
9 changes: 7 additions & 2 deletions docs/index.json
Original file line number Diff line number Diff line change
Expand Up @@ -549,10 +549,15 @@
"title": "Class FordFulkersonMaxFlow<T, W> | Advanced Algorithms",
"keywords": "Class FordFulkersonMaxFlow<T, W> A ford-fulkerson max flox implementation on weighted directed graph using adjacency list representation of graph and residual graph. Inheritance Object FordFulkersonMaxFlow<T, W> Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : Advanced.Algorithms.Graph Assembly : Advanced.Algorithms.dll Syntax public class FordFulkersonMaxFlow<T, W> where W : IComparable Type Parameters Name Description T W Constructors FordFulkersonMaxFlow(IFlowOperators<W>) Declaration public FordFulkersonMaxFlow(IFlowOperators<W> operator) Parameters Type Name Description IFlowOperators <W> operator Methods ComputeMaxFlow(IDiGraph<T>, T, T) Compute max flow by searching a path and then augmenting the residual graph until no more path exists in residual graph with possible flow. Declaration public W ComputeMaxFlow(IDiGraph<T> graph, T source, T sink) Parameters Type Name Description IDiGraph <T> graph T source T sink Returns Type Description W ComputeMaxFlowAndReturnFlowPath(IDiGraph<T>, T, T) Return all flow Paths. Declaration public List<List<T>> ComputeMaxFlowAndReturnFlowPath(IDiGraph<T> graph, T source, T sink) Parameters Type Name Description IDiGraph <T> graph T source T sink Returns Type Description List < List <T>>"
},
"api/Advanced.Algorithms.Graph.HopcroftKarpMatching-1.html": {
"href": "api/Advanced.Algorithms.Graph.HopcroftKarpMatching-1.html",
"title": "Class HopcroftKarpMatching<T> | Advanced Algorithms",
"keywords": "Class HopcroftKarpMatching<T> Compute Max BiParitite Edges using Hopcroft Karp algorithm. Inheritance Object HopcroftKarpMatching<T> Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : Advanced.Algorithms.Graph Assembly : Advanced.Algorithms.dll Syntax public class HopcroftKarpMatching<T> Type Parameters Name Description T Methods GetMaxBiPartiteMatching(IGraph<T>) Returns a list of Max BiPartite Match Edges. Declaration public HashSet<MatchEdge<T>> GetMaxBiPartiteMatching(IGraph<T> graph) Parameters Type Name Description IGraph <T> graph Returns Type Description HashSet < MatchEdge <T>>"
},
"api/Advanced.Algorithms.Graph.html": {
"href": "api/Advanced.Algorithms.Graph.html",
"title": "Namespace Advanced.Algorithms.Graph | Advanced Algorithms",
"keywords": "Namespace Advanced.Algorithms.Graph Classes AllPairShortestPathResult<T, W> All pairs shortest path algorithm result object. AStarShortestPath<T, W> A* algorithm implementation using Fibonacci Heap. BellmanFordShortestPath<T, W> A Bellman Ford algorithm implementation. BiDirectional<T> A BiDirectional Path Search on DiGraph. BiPartiteMatching<T> Compute Max BiParitite Edges using Ford-Fukerson algorithm. BreadthFirst<T> Bread First Search implementation. Bridge<T> The bridge object. CycleDetector<T> Cycle detection using Depth First Search. DepthFirst<T> Depth First Search. DepthFirstTopSort<T> Find Toplogical order of a graph using Depth First Search. DijikstraShortestPath<T, W> A dijikstra algorithm implementation using Fibonacci Heap. EdmondKarpMaxFlow<T, W> An Edmond Karp max flow implementation on weighted directed graph using adjacency list representation of graph and residual graph. FloydWarshallShortestPath<T, W> A floyd-warshall shortest path algorithm implementation. FordFulkersonMaxFlow<T, W> A ford-fulkerson max flox implementation on weighted directed graph using adjacency list representation of graph and residual graph. JohnsonsShortestPath<T, W> A Johnson's shortest path algorithm implementation. KahnsTopSort<T> Find Toplogical order of a graph using Kahn's algorithm. KosarajuStronglyConnected<T> A Kosaraju Strong Connected Component Algorithm Implementation. Kruskals<T, W> A Kruskal's alogorithm implementation using merge sort and disjoint set. MatchEdge<T> The match result object. MColorer<T, C> An m-coloring algorithm implementation. MColorResult<T, C> M-coloring result object. MinCut<T, W> Compute minimum cut edges of given graph using Edmond-Karps improved Ford-Fulkerson Max Flow Algorithm. MinCutEdge<T> Minimum cut result object. MinVertexCover<T> A minimum vertex conver algorithm implementation. MSTEdge<T, W> Minimum spanning tree edge object. Prims<T, W> A Prims algorithm implementation. PushRelabelMaxFlow<T, W> A Push-Relabel algorithm implementation. ShortestPathResult<T, W> Shortest path result object. TarjansArticulationFinder<T> Articulation point finder using Tarjan's algorithm. TarjansBiConnected<T> Finds if a graph is BiConnected. TarjansBridgeFinder<T> Bridge finder using Tarjan's algorithm. TarjansStronglyConnected<T> Strongly connected using Tarjan's algorithm. TravellingSalesman<T, W> Uses dynamic programming for a psuedo-polynomial time runTime complexity for this NP hard problem. Interfaces IAStarHeuristic<T, W> Search heuristic used by A* search algorithm. IBiPartiteMatchOperators<T> Generic operator interface required by BiPartite matching algorithm. IFlowOperators<W> Operators to deal with generic Add, Substract etc on edge weights for flow algorithms such as ford-fulkerson algorithm. IJohnsonsShortestPathOperators<T, W> A concrete implementation of this interface is required by Johnson's algorithm. IShortestPathOperators<W> Generic operators interface required by shorted path algorithms."
"keywords": "Namespace Advanced.Algorithms.Graph Classes AllPairShortestPathResult<T, W> All pairs shortest path algorithm result object. AStarShortestPath<T, W> A* algorithm implementation using Fibonacci Heap. BellmanFordShortestPath<T, W> A Bellman Ford algorithm implementation. BiDirectional<T> A BiDirectional Path Search on DiGraph. BiPartiteMatching<T> Compute Max BiParitite Edges using Ford-Fukerson algorithm. BreadthFirst<T> Bread First Search implementation. Bridge<T> The bridge object. CycleDetector<T> Cycle detection using Depth First Search. DepthFirst<T> Depth First Search. DepthFirstTopSort<T> Find Toplogical order of a graph using Depth First Search. DijikstraShortestPath<T, W> A dijikstra algorithm implementation using Fibonacci Heap. EdmondKarpMaxFlow<T, W> An Edmond Karp max flow implementation on weighted directed graph using adjacency list representation of graph and residual graph. FloydWarshallShortestPath<T, W> A floyd-warshall shortest path algorithm implementation. FordFulkersonMaxFlow<T, W> A ford-fulkerson max flox implementation on weighted directed graph using adjacency list representation of graph and residual graph. HopcroftKarpMatching<T> Compute Max BiParitite Edges using Hopcroft Karp algorithm. JohnsonsShortestPath<T, W> A Johnson's shortest path algorithm implementation. KahnsTopSort<T> Find Toplogical order of a graph using Kahn's algorithm. KosarajuStronglyConnected<T> A Kosaraju Strong Connected Component Algorithm Implementation. Kruskals<T, W> A Kruskal's alogorithm implementation using merge sort and disjoint set. MatchEdge<T> The match result object. MColorer<T, C> An m-coloring algorithm implementation. MColorResult<T, C> M-coloring result object. MinCut<T, W> Compute minimum cut edges of given graph using Edmond-Karps improved Ford-Fulkerson Max Flow Algorithm. MinCutEdge<T> Minimum cut result object. MinVertexCover<T> A minimum vertex conver algorithm implementation. MSTEdge<T, W> Minimum spanning tree edge object. Prims<T, W> A Prims algorithm implementation. PushRelabelMaxFlow<T, W> A Push-Relabel algorithm implementation. ShortestPathResult<T, W> Shortest path result object. TarjansArticulationFinder<T> Articulation point finder using Tarjan's algorithm. TarjansBiConnected<T> Finds if a graph is BiConnected. TarjansBridgeFinder<T> Bridge finder using Tarjan's algorithm. TarjansStronglyConnected<T> Strongly connected using Tarjan's algorithm. TravellingSalesman<T, W> Uses dynamic programming for a psuedo-polynomial time runTime complexity for this NP hard problem. Interfaces IAStarHeuristic<T, W> Search heuristic used by A* search algorithm. IBiPartiteMatchOperators<T> Generic operator interface required by BiPartite matching algorithm. IFlowOperators<W> Operators to deal with generic Add, Substract etc on edge weights for flow algorithms such as ford-fulkerson algorithm. IJohnsonsShortestPathOperators<T, W> A concrete implementation of this interface is required by Johnson's algorithm. IShortestPathOperators<W> Generic operators interface required by shorted path algorithms."
},
"api/Advanced.Algorithms.Graph.IAStarHeuristic-2.html": {
"href": "api/Advanced.Algorithms.Graph.IAStarHeuristic-2.html",
Expand Down Expand Up @@ -602,7 +607,7 @@
"api/Advanced.Algorithms.Graph.MatchEdge-1.html": {
"href": "api/Advanced.Algorithms.Graph.MatchEdge-1.html",
"title": "Class MatchEdge<T> | Advanced Algorithms",
"keywords": "Class MatchEdge<T> The match result object. Inheritance Object MatchEdge<T> Inherited Members Object.ToString() Object.Equals(Object) Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetHashCode() Object.GetType() Object.MemberwiseClone() Namespace : Advanced.Algorithms.Graph Assembly : Advanced.Algorithms.dll Syntax public class MatchEdge<T> Type Parameters Name Description T Constructors MatchEdge(T, T) Declaration public MatchEdge(T source, T target) Parameters Type Name Description T source T target Properties Source Declaration public T Source { get; } Property Value Type Description T Target Declaration public T Target { get; } Property Value Type Description T"
"keywords": "Class MatchEdge<T> The match result object. Inheritance Object MatchEdge<T> Inherited Members Object.ToString() Object.Equals(Object, Object) Object.ReferenceEquals(Object, Object) Object.GetType() Object.MemberwiseClone() Namespace : Advanced.Algorithms.Graph Assembly : Advanced.Algorithms.dll Syntax public class MatchEdge<T> Type Parameters Name Description T Constructors MatchEdge(T, T) Declaration public MatchEdge(T source, T target) Parameters Type Name Description T source T target Properties Source Declaration public T Source { get; } Property Value Type Description T Target Declaration public T Target { get; } Property Value Type Description T Methods Equals(Object) Declaration public override bool Equals(object obj) Parameters Type Name Description Object obj Returns Type Description Boolean Overrides Object.Equals(Object) GetHashCode() Declaration public override int GetHashCode() Returns Type Description Int32 Overrides Object.GetHashCode()"
},
"api/Advanced.Algorithms.Graph.MColorer-2.html": {
"href": "api/Advanced.Algorithms.Graph.MColorer-2.html",
Expand Down
Loading

0 comments on commit b48149e

Please sign in to comment.