8383
8484 < h1 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1 " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1 " class ="text-break "> Class Graph<T>
8585 </ h1 >
86- < div class ="markdown level0 summary "> < p > A directed graph implementation using dynamically growinng /shrinking adjacency matrix array.
86+ < div class ="markdown level0 summary "> < p > A directed graph implementation using dynamically growing /shrinking adjacency matrix array.
8787IEnumerable enumerates all vertices.</ p >
8888</ div >
8989 < div class ="markdown level0 conceptual "> </ div >
@@ -92,11 +92,15 @@ <h5>Inheritance</h5>
9292 < div class ="level0 "> < a class ="xref " href ="https://docs.microsoft.com/dotnet/api/system.object "> Object</ a > </ div >
9393 < div class ="level1 "> < span class ="xref "> Graph<T></ span > </ div >
9494 </ div >
95+ < div classs ="implements ">
96+ < h5 > Implements</ h5 >
97+ < div > < span class ="xref "> IEnumerable</ span > <T></ div >
98+ </ div >
9599 < h6 > < strong > Namespace</ strong > : < a class ="xref " href ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.html "> Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix</ a > </ h6 >
96100 < h6 > < strong > Assembly</ strong > : Advanced.Algorithms.dll</ h6 >
97101 < h5 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_syntax "> Syntax</ h5 >
98102 < div class ="codewrapper ">
99- < pre > < code class ="lang-csharp hljs "> public class Graph<T> : IEnumerable<T></ code > </ pre >
103+ < pre > < code class ="lang-csharp hljs "> public class Graph<T> : IGraph<T>, IEnumerable<T></ code > </ pre >
100104 </ div >
101105 < h5 class ="typeParameters "> Type Parameters</ h5 >
102106 < table class ="table table-bordered table-striped table-condensed ">
@@ -129,6 +133,81 @@ <h3 id="properties">Properties
129133 </ h3 >
130134
131135
136+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_IsWeightedGraph_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.IsWeightedGraph* "> </ a >
137+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_IsWeightedGraph " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.IsWeightedGraph "> IsWeightedGraph</ h4 >
138+ < div class ="markdown level1 summary "> </ div >
139+ < div class ="markdown level1 conceptual "> </ div >
140+ < h5 class ="decalaration "> Declaration</ h5 >
141+ < div class ="codewrapper ">
142+ < pre > < code class ="lang-csharp hljs "> public bool IsWeightedGraph { get; }</ code > </ pre >
143+ </ div >
144+ < h5 class ="propertyValue "> Property Value</ h5 >
145+ < table class ="table table-bordered table-striped table-condensed ">
146+ < thead >
147+ < tr >
148+ < th > Type</ th >
149+ < th > Description</ th >
150+ </ tr >
151+ </ thead >
152+ < tbody >
153+ < tr >
154+ < td > < a class ="xref " href ="https://docs.microsoft.com/dotnet/api/system.boolean "> Boolean</ a > </ td >
155+ < td > </ td >
156+ </ tr >
157+ </ tbody >
158+ </ table >
159+
160+
161+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_ReferenceVertex_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.ReferenceVertex* "> </ a >
162+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_ReferenceVertex " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.ReferenceVertex "> ReferenceVertex</ h4 >
163+ < div class ="markdown level1 summary "> </ div >
164+ < div class ="markdown level1 conceptual "> </ div >
165+ < h5 class ="decalaration "> Declaration</ h5 >
166+ < div class ="codewrapper ">
167+ < pre > < code class ="lang-csharp hljs "> public IGraphVertex<T> ReferenceVertex { get; }</ code > </ pre >
168+ </ div >
169+ < h5 class ="propertyValue "> Property Value</ h5 >
170+ < table class ="table table-bordered table-striped table-condensed ">
171+ < thead >
172+ < tr >
173+ < th > Type</ th >
174+ < th > Description</ th >
175+ </ tr >
176+ </ thead >
177+ < tbody >
178+ < tr >
179+ < td > < span class ="xref "> IGraphVertex</ span > <T></ td >
180+ < td > </ td >
181+ </ tr >
182+ </ tbody >
183+ </ table >
184+
185+
186+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_VerticesAsEnumberable_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.VerticesAsEnumberable* "> </ a >
187+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_VerticesAsEnumberable " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.VerticesAsEnumberable "> VerticesAsEnumberable</ h4 >
188+ < div class ="markdown level1 summary "> </ div >
189+ < div class ="markdown level1 conceptual "> </ div >
190+ < h5 class ="decalaration "> Declaration</ h5 >
191+ < div class ="codewrapper ">
192+ < pre > < code class ="lang-csharp hljs "> public IEnumerable<IGraphVertex<T>> VerticesAsEnumberable { get; }</ code > </ pre >
193+ </ div >
194+ < h5 class ="propertyValue "> Property Value</ h5 >
195+ < table class ="table table-bordered table-striped table-condensed ">
196+ < thead >
197+ < tr >
198+ < th > Type</ th >
199+ < th > Description</ th >
200+ </ tr >
201+ </ thead >
202+ < tbody >
203+ < tr >
204+ < td > < span class ="xref "> IEnumerable</ span > << span class ="xref "> IGraphVertex</ span > <T>></ td >
205+ < td > </ td >
206+ </ tr >
207+ </ tbody >
208+ </ table >
209+
210+
132211 < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_VerticesCount_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.VerticesCount* "> </ a >
133212 < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_VerticesCount " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.VerticesCount "> VerticesCount</ h4 >
134213 < div class ="markdown level1 summary "> </ div >
@@ -219,6 +298,73 @@ <h5 class="parameters">Parameters</h5>
219298 </ table >
220299
221300
301+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_Clone_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.Clone* "> </ a >
302+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_Clone " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.Clone "> Clone()</ h4 >
303+ < div class ="markdown level1 summary "> </ div >
304+ < div class ="markdown level1 conceptual "> </ div >
305+ < h5 class ="decalaration "> Declaration</ h5 >
306+ < div class ="codewrapper ">
307+ < pre > < code class ="lang-csharp hljs "> public Graph<T> Clone()</ code > </ pre >
308+ </ div >
309+ < h5 class ="returns "> Returns</ h5 >
310+ < table class ="table table-bordered table-striped table-condensed ">
311+ < thead >
312+ < tr >
313+ < th > Type</ th >
314+ < th > Description</ th >
315+ </ tr >
316+ </ thead >
317+ < tbody >
318+ < tr >
319+ < td > < a class ="xref " href ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph-1.html "> Graph</ a > <T></ td >
320+ < td > </ td >
321+ </ tr >
322+ </ tbody >
323+ </ table >
324+
325+
326+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_ContainsVertex_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.ContainsVertex* "> </ a >
327+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_ContainsVertex__0_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.ContainsVertex(`0) "> ContainsVertex(T)</ h4 >
328+ < div class ="markdown level1 summary "> </ div >
329+ < div class ="markdown level1 conceptual "> </ div >
330+ < h5 class ="decalaration "> Declaration</ h5 >
331+ < div class ="codewrapper ">
332+ < pre > < code class ="lang-csharp hljs "> public bool ContainsVertex(T key)</ code > </ pre >
333+ </ div >
334+ < h5 class ="parameters "> Parameters</ h5 >
335+ < table class ="table table-bordered table-striped table-condensed ">
336+ < thead >
337+ < tr >
338+ < th > Type</ th >
339+ < th > Name</ th >
340+ < th > Description</ th >
341+ </ tr >
342+ </ thead >
343+ < tbody >
344+ < tr >
345+ < td > < span class ="xref "> T</ span > </ td >
346+ < td > < span class ="parametername "> key</ span > </ td >
347+ < td > </ td >
348+ </ tr >
349+ </ tbody >
350+ </ table >
351+ < h5 class ="returns "> Returns</ h5 >
352+ < table class ="table table-bordered table-striped table-condensed ">
353+ < thead >
354+ < tr >
355+ < th > Type</ th >
356+ < th > Description</ th >
357+ </ tr >
358+ </ thead >
359+ < tbody >
360+ < tr >
361+ < td > < a class ="xref " href ="https://docs.microsoft.com/dotnet/api/system.boolean "> Boolean</ a > </ td >
362+ < td > </ td >
363+ </ tr >
364+ </ tbody >
365+ </ table >
366+
367+
222368 < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_Edges_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.Edges* "> </ a >
223369 < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_Edges__0_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.Edges(`0) "> Edges(T)</ h4 >
224370 < div class ="markdown level1 summary "> </ div >
@@ -261,6 +407,48 @@ <h5 class="returns">Returns</h5>
261407 </ table >
262408
263409
410+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_EdgesCount_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.EdgesCount* "> </ a >
411+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_EdgesCount__0_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.EdgesCount(`0) "> EdgesCount(T)</ h4 >
412+ < div class ="markdown level1 summary "> </ div >
413+ < div class ="markdown level1 conceptual "> </ div >
414+ < h5 class ="decalaration "> Declaration</ h5 >
415+ < div class ="codewrapper ">
416+ < pre > < code class ="lang-csharp hljs "> public int EdgesCount(T vertex)</ code > </ pre >
417+ </ div >
418+ < h5 class ="parameters "> Parameters</ h5 >
419+ < table class ="table table-bordered table-striped table-condensed ">
420+ < thead >
421+ < tr >
422+ < th > Type</ th >
423+ < th > Name</ th >
424+ < th > Description</ th >
425+ </ tr >
426+ </ thead >
427+ < tbody >
428+ < tr >
429+ < td > < span class ="xref "> T</ span > </ td >
430+ < td > < span class ="parametername "> vertex</ span > </ td >
431+ < td > </ td >
432+ </ tr >
433+ </ tbody >
434+ </ table >
435+ < h5 class ="returns "> Returns</ h5 >
436+ < table class ="table table-bordered table-striped table-condensed ">
437+ < thead >
438+ < tr >
439+ < th > Type</ th >
440+ < th > Description</ th >
441+ </ tr >
442+ </ thead >
443+ < tbody >
444+ < tr >
445+ < td > < a class ="xref " href ="https://docs.microsoft.com/dotnet/api/system.int32 "> Int32</ a > </ td >
446+ < td > </ td >
447+ </ tr >
448+ </ tbody >
449+ </ table >
450+
451+
264452 < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_GetEnumerator_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.GetEnumerator* "> </ a >
265453 < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_GetEnumerator " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.GetEnumerator "> GetEnumerator()</ h4 >
266454 < div class ="markdown level1 summary "> </ div >
@@ -286,6 +474,48 @@ <h5 class="returns">Returns</h5>
286474 </ table >
287475
288476
477+ < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_GetVertex_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.GetVertex* "> </ a >
478+ < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_GetVertex__0_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.GetVertex(`0) "> GetVertex(T)</ h4 >
479+ < div class ="markdown level1 summary "> </ div >
480+ < div class ="markdown level1 conceptual "> </ div >
481+ < h5 class ="decalaration "> Declaration</ h5 >
482+ < div class ="codewrapper ">
483+ < pre > < code class ="lang-csharp hljs "> public IGraphVertex<T> GetVertex(T key)</ code > </ pre >
484+ </ div >
485+ < h5 class ="parameters "> Parameters</ h5 >
486+ < table class ="table table-bordered table-striped table-condensed ">
487+ < thead >
488+ < tr >
489+ < th > Type</ th >
490+ < th > Name</ th >
491+ < th > Description</ th >
492+ </ tr >
493+ </ thead >
494+ < tbody >
495+ < tr >
496+ < td > < span class ="xref "> T</ span > </ td >
497+ < td > < span class ="parametername "> key</ span > </ td >
498+ < td > </ td >
499+ </ tr >
500+ </ tbody >
501+ </ table >
502+ < h5 class ="returns "> Returns</ h5 >
503+ < table class ="table table-bordered table-striped table-condensed ">
504+ < thead >
505+ < tr >
506+ < th > Type</ th >
507+ < th > Description</ th >
508+ </ tr >
509+ </ thead >
510+ < tbody >
511+ < tr >
512+ < td > < span class ="xref "> IGraphVertex</ span > <T></ td >
513+ < td > </ td >
514+ </ tr >
515+ </ tbody >
516+ </ table >
517+
518+
289519 < a id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_HasEdge_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.HasEdge* "> </ a >
290520 < h4 id ="Advanced_Algorithms_DataStructures_Graph_AdjacencyMatrix_Graph_1_HasEdge__0__0_ " data-uid ="Advanced.Algorithms.DataStructures.Graph.AdjacencyMatrix.Graph`1.HasEdge(`0,`0) "> HasEdge(T, T)</ h4 >
291521 < div class ="markdown level1 summary "> < p > Do we have an edge between the given source and destination?
@@ -396,6 +626,10 @@ <h5 class="parameters">Parameters</h5>
396626 </ tr >
397627 </ tbody >
398628 </ table >
629+ < h3 id ="implements "> Implements</ h3 >
630+ < div >
631+ < span class ="xref "> IEnumerable<></ span >
632+ </ div >
399633</ article >
400634 </ div >
401635
0 commit comments