Consider a binary search tree implemented in Java with a node inner class as shown. The tree is implemented as a full binary tree where internal nodes store keys and external nodes are dummy leaves containing null in their key and value fields. Several standard methods have been implemented as discussed in class, but are not shown below. Complete the implementation of the method getMaximum() which must return the value of the largest key in the binary search tree, by filling in the blanks.   public class BinarySearchTree ,V> {  private static class Node {  private V value;  private K key;  private Node left;  private Node right;  private Node parent;  private Node(K key, V value) {  this.value = value;  this.key = key;  left = null;  right = null;  parent= null;  }  }  private Node root = new Node(null,null);  // initializes an empty tree with dummy leaf  // Assume we have implemented methods: V search(K key); insert(K key, V value);  // V delete(K key); boolean isExternal(Node node); int size(); etc.  public K getMaximum() {  if (isExternal(root)) return null;  Node current = root;  while (________________________ ) {  _________________________ ;  }  return __________________ ;  } }

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter18: Stacks And Queues
Section: Chapter Questions
Problem 16PE: The implementation of a queue in an array, as given in this chapter, uses the variable count to...
icon
Related questions
Question

Consider a binary search tree implemented in Java with a node inner class as shown. The tree is implemented as a full binary tree where internal nodes store keys and external nodes are dummy leaves containing null in their key and value fields. Several standard methods have been implemented as discussed in class, but are not shown below. Complete the implementation of the method getMaximum() which must return the value of the largest key in the binary search tree, by filling in the blanks.

 

public class BinarySearchTree <K extends Comparable<K>,V> {
 private static class Node<K,V> {
 private V value;
 private K key;
 private Node<K,V> left;
 private Node<K,V> right;
 private Node<K,V> parent;
 private Node(K key, V value) {
 this.value = value;
 this.key = key;
 left = null;
 right = null;
 parent= null;
 }
 }
 private Node<K,V> root = new Node<K,V>(null,null);
 // initializes an empty tree with dummy leaf
 // Assume we have implemented methods: V search(K key); insert(K key, V value);
 // V delete(K key); boolean isExternal(Node<K,V> node); int size(); etc.
 public K getMaximum() {
 if (isExternal(root)) return null;

 Node<K,V> current = root;

 while (________________________ ) {
 _________________________ ;
 }
 return __________________ ;
 }
}

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Mergesort
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning