Package edu.uci.ics.jung.graph.util
Class TreeUtils
java.lang.Object
edu.uci.ics.jung.graph.util.TreeUtils
Contains static methods for operating on instances of
Tree
.-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic <V,
E> void addFromSubTree
(Forest<V, E> tree, Forest<V, E> subTree, E edge, V parent, V root) static <V,
E> void addSubTree
(Forest<V, E> tree, Forest<V, E> subTree, V node, E connectingEdge) ConnectssubTree
totree
by attaching it as a child ofnode
with edgeconnectingEdge
.static <V,
E> List <V> static <V,
E> Tree <V, E> getSubTree
(Forest<V, E> forest, V root) Returns the subtree oftree
which is rooted atroot
as aForest
.static <V,
E> void growSubTree
(Forest<V, E> tree, Forest<V, E> subTree, V root) Populatessubtree
with the subtree oftree
which is rooted atroot
.
-
Constructor Details
-
TreeUtils
public TreeUtils()
-
-
Method Details
-
getRoots
- Type Parameters:
V
- the vertex typeE
- the edge type- Parameters:
forest
- the forest whose roots are to be returned- Returns:
- the roots of this forest.
-
getSubTree
public static <V,E> Tree<V,E> getSubTree(Forest<V, E> forest, V root) throws InstantiationException, IllegalAccessExceptionReturns the subtree oftree
which is rooted atroot
as aForest
. The tree returned is an independent entity, although it uses the same vertex and edge objects.- Type Parameters:
V
- the vertex typeE
- the edge type- Parameters:
forest
- the tree whose subtree is to be extractedroot
- the root of the subtree to be extracted- Returns:
- the subtree of
tree
which is rooted atroot
- Throws:
InstantiationException
- if a new tree of the same type cannot be createdIllegalAccessException
- if a new tree of the same type cannot be created
-
growSubTree
Populatessubtree
with the subtree oftree
which is rooted atroot
.- Type Parameters:
V
- the vertex typeE
- the edge type- Parameters:
tree
- the tree whose subtree is to be extractedsubTree
- the tree instance which is to be populated with the subtree oftree
root
- the root of the subtree to be extracted
-
addSubTree
public static <V,E> void addSubTree(Forest<V, E> tree, Forest<V, E> subTree, V node, E connectingEdge) ConnectssubTree
totree
by attaching it as a child ofnode
with edgeconnectingEdge
.- Type Parameters:
V
- the vertex typeE
- the edge type- Parameters:
tree
- the tree to whichsubTree
is to be addedsubTree
- the tree which is to be grafted on totree
node
- the parent ofsubTree
in its new position intree
connectingEdge
- the edge used to connectsubtree
's root as a child ofnode
-
addFromSubTree
-