Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

graph::unionfind(3pm) [debian man page]

Graph::UnionFind(3pm)					User Contributed Perl Documentation				     Graph::UnionFind(3pm)

NAME
Graph::UnionFind - union-find data structures SYNOPSIS
use Graph::UnionFind; my $uf = Graph::UnionFind->new; # Add the vertices to the data structure. $uf->add($u); $uf->add($v); # Join the partitions of the vertices. $uf->union( $u, $v ); # Find the partitions the vertices belong to # in the union-find data structure. If they # are equal, they are in the same partition. # If the vertex has not been seen, # undef is returned. my $pu = $uf->find( $u ); my $pv = $uf->find( $v ); $uf->same($u, $v) # Equal to $pu eq $pv. # Has the union-find seen this vertex? $uf->has( $v ) DESCRIPTION
Union-find is a special data structure that can be used to track the partitioning of a set into subsets (a problem known also as disjoint sets). Graph::UnionFind() is used for Graph::connected_components(), Graph::connected_component(), and Graph::same_connected_components() if you specify a true "union_find" parameter when you create an undirected graph. Note that union-find is one way: you cannot (easily) 'ununion' vertices once you have 'unioned' them. This means that if you delete edges from a "union_find" graph, you will get wrong results from the Graph::connected_components(), Graph::connected_component(), and Graph::same_connected_components(). API add $uf->add($v) Add the vertex v to the union-find. union $uf->union($u, $v) Add the edge u-v to the union-find. Also implicitly adds the vertices. has $uf->has($v) Return true if the vertex v has been added to the union-find, false otherwise. find $uf->find($v) Return the union-find partition the vertex v belongs to, or "undef" if it has not been added. new $uf = Graph::UnionFind->new() The constructor. same $uf->same($u, $v) Return true of the vertices belong to the same union-find partition the vertex v belongs to, false otherwise. AUTHOR AND COPYRIGHT
Jarkko Hietaniemi jhi@iki.fi LICENSE
This module is licensed under the same terms as Perl itself. perl v5.10.0 2008-11-27 Graph::UnionFind(3pm)

Check Out this Related Man Page

Graph::Writer::GraphViz(3pm)				User Contributed Perl Documentation			      Graph::Writer::GraphViz(3pm)

NAME
Graph::Writer::GraphViz - GraphViz Writer for Graph object SYNOPSIS
my @v = qw/Alice Bob Crude Dr/; my $g = Graph->new(@v); my $wr = Graph::Writer::GraphViz->new(-format => 'dot'); $wr->write_graph($g,'/tmp/graph.simple.dot'); my $wr_png = Graph::Writer::GraphViz->new(-format => 'png'); $wr_png->write_graph($g,'/tmp/graph.simple.png'); Graph::Writer::GraphViz->new( -format => 'png', -layout => 'twopi', -ranksep => 1.5, -fontsize => 8 -edge_color => 'grey', -node_color => 'black', )->write_graph($g,'/tmp/graph.png'); DESCRIPTION
Graph::Writer::GraphViz is a class for writing out a Graph object with GraphViz module. All GraphViz formats should be supported without a problem. METHODS
new() Unlike other Graph::Writer modules, this module provide an extra parameter '-format' to new() method, in order to save different format. Other supported GraphViz parameters are -layout, -ranksep, -shape, -fontsize, -arrowsize. Please see the SYNOPSIS for example usage. Valid format depends on those GraphViz as_fmt methods on your system, like, 'gif' if you have 'as_gif', 'text' if you can do 'as_text'. SEE ALSO
Graph, Graph::Writer, GraphViz CREDITS
Thanks for RURBAN@cpan.org for noticing tests failure on different platforms. COPYRIGHT
Copyright 2004 by Kang-min Liu <gugod@gugod.org>. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See <http://www.perl.com/perl/misc/Artistic.html> perl v5.12.4 2011-10-16 Graph::Writer::GraphViz(3pm)
Man Page