class BipartiteMatcher extends AnyRef
The BipartiteMatcher
class provides an implementation of finding maximal
Bipartite Matching.
- See also
www.geeksforgeeks.org/maximum-bipartite-matching/
- Alphabetic
- By Inheritance
- BipartiteMatcher
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
BipartiteMatcher(bpGraph: Array[Array[Boolean]])
- bpGraph
the bipartite graph
Value Members
-
def
bpm(u: Int, seen: Array[Boolean], matchR: Array[Int]): Boolean
A DFS based recursive function that returns true if a matching for vertex u is possible.
A DFS based recursive function that returns true if a matching for vertex u is possible.
- u
vertex u to be check, whether matching is possible of u to any unmatched v
- seen
array of vertex v, to keep track of whether v is already seen by some other u
- matchR
array which contain information of vertex v is assigned to vertex u
-
def
maxBPM(): Int
Returns maximum number of matching from 'M' to 'N'.
Returns maximum number of matching from 'M' to 'N'. The value of 'matchR(i)' is the applicant number assigned to job 'i', the value -1 indicates nobody is assigned.