Advertisement
Guest User

Untitled

a guest
Dec 12th, 2019
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.66 KB | None | 0 0
  1. public MutableTree<T> removeSubtree(Node<T> rootSubTree) {
  2.         if (this.root == rootSubTree) {
  3.             this.root = null;
  4.             return null;
  5.         }
  6.  
  7.         removeSubtree(this.root, rootSubTree);
  8.  
  9.         return this;
  10.     }
  11.  
  12.     private void removeSubtree(Node<T> rootNode, Node<T> rootSubTree) {
  13.  
  14.         if (rootNode.getChildren().size() == 0)
  15.             return;
  16.  
  17.         if (!rootNode.getChildren().contains(rootSubTree)) {
  18.             for (var child : rootNode.getChildren()) {
  19.                 removeSubtree(child, rootSubTree);
  20.             }
  21.         } else {
  22.             rootNode.getChildren().remove(rootSubTree);
  23.         }
  24.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement