Class Tree<T>

  • Type Parameters:
    T - tree node type

    public class Tree<T>
    extends Object
    Version:
    Jul 12, 2016
    Author:
    Mohamed Sherif (sherif@informatik.uni-leipzig.de)
    • Constructor Detail

      • Tree

        public Tree​(Tree<T> parent,
                    T value,
                    List<Tree<T>> childrenlist)
      • Tree

        public Tree​(T value)
        Parameters:
        value - of the new node
      • Tree

        public Tree()
        create an empty tree
    • Method Detail

      • getLeaves

        public Set<Tree<T>> getLeaves()
        Returns:
        set of the tree nodes
      • addChild

        public void addChild​(Tree<T> child)
        Parameters:
        child - to be added
      • removeChild

        public void removeChild​(Tree<T> child)
        Parameters:
        child - to be removed
      • remove

        public void remove()
        remove current node and all its children
      • getParent

        public Tree<T> getParent()
        Returns:
        parent of the current node
      • getchildren

        public List<Tree<T>> getchildren()
        Returns:
        list of children of current node
      • getValue

        public T getValue()
        Returns:
        value contained in current node
      • print

        public void print()
        print tree
      • size

        public long size()
        Returns:
        tree size (number of nodes)
      • depth

        public long depth()
        Returns:
        tree depth (number of levels)
      • level

        public long level()
        Returns:
        current node's level