Package edu.uci.ics.jung.graph.util
Class TreeUtils
- java.lang.Object
-
- edu.uci.ics.jung.graph.util.TreeUtils
-
public class TreeUtils extends java.lang.ObjectContains static methods for operating on instances ofTree.
-
-
Constructor Summary
Constructors Constructor Description TreeUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <V,E>
voidaddFromSubTree(Forest<V,E> tree, Forest<V,E> subTree, E edge, V parent, V root)static <V,E>
voidaddSubTree(Forest<V,E> tree, Forest<V,E> subTree, V node, E connectingEdge)ConnectssubTreetotreeby attaching it as a child ofnodewith edgeconnectingEdge.static <V,E>
java.util.List<V>getRoots(Forest<V,E> forest)static <V,E>
Tree<V,E>getSubTree(Forest<V,E> forest, V root)Returns the subtree oftreewhich is rooted atrootas aForest.static <V,E>
voidgrowSubTree(Forest<V,E> tree, Forest<V,E> subTree, V root)Populatessubtreewith the subtree oftreewhich is rooted atroot.
-
-
-
Method Detail
-
getRoots
public static <V,E> java.util.List<V> getRoots(Forest<V,E> forest)
- 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 java.lang.InstantiationException, java.lang.IllegalAccessException
Returns the subtree oftreewhich is rooted atrootas 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
treewhich is rooted atroot - Throws:
java.lang.InstantiationException- if a new tree of the same type cannot be createdjava.lang.IllegalAccessException- if a new tree of the same type cannot be created
-
growSubTree
public static <V,E> void growSubTree(Forest<V,E> tree, Forest<V,E> subTree, V root)
Populatessubtreewith the subtree oftreewhich 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 oftreeroot- 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)
ConnectssubTreetotreeby attaching it as a child ofnodewith edgeconnectingEdge.- Type Parameters:
V- the vertex typeE- the edge type- Parameters:
tree- the tree to whichsubTreeis to be addedsubTree- the tree which is to be grafted on totreenode- the parent ofsubTreein its new position intreeconnectingEdge- the edge used to connectsubtree's root as a child ofnode
-
-