Beispiel #1
0
def compute_maximum_size_bipartite_matching(link_tuples = None, num_nodes = 0):

	if(link_tuples == None):
		num_nodes, link_tuples = get_link_tuples_from_input()

	num_nodes, super_source, super_sink = add_super_source_sink(link_tuples, num_nodes, 1)
	g = Graph(num_nodes, link_tuples)

	g.FordFulkerson(super_source, super_sink, g.BFS)
	g.get_matching(super_source, super_sink)