Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

In this problem, you will write some Java code for simple operations on binary search trees where keys are integers. Assume you already have the

In this problem, you will write some Java code for simple operations on binary search trees where keys are integers. Assume you already have the following code and assume that the method bodies, even though not shown, are correct and implement the operations as we defined them in class.

public class BinarySearchTreeNode {

 public int key; public BinarySearchTreeNode left; public BinarySearchTreeNode right; 

}

 public class BinarySearchTree { 

private BinarySearchTreeNode root; public void insert(int key) { ... } public void delete(int key) { ... } public boolean find(int key) { ... }

}

(a) Add a method public int positiveKeySum() to the BinarySearchTree class that returns the sum of all non-negative keys in the tree. You will need an assistant/helper method.

(b) Add method public void deleteMax() to the BinarySearchTree class that deletes the maximum element in the tree (or does nothing if the tree has no elements).

(c) Add method public void printTree() to the BinarySearchTree class that iterates over the nodes to print then in decreasing order. So the tree produces the output "5 4 3 2 1". Note: You will need an assistant/helper method.

(d) Add method public void printPostorder() to the BinarySearchTree class that prints out the nodes of the tree according to a "postorder" traversal. So the tree produces the output "13254". Note: you will need an assistant/helper method.

(e) You have a binary search tree. Consider a leave l. B is the set of keys in the path p of l including the leave l and the root of the tree. A is the set of keys to the left of the path p. C is the set of keys to the right of the path p. Is the following statement true or false? Given any element a in A; b in B; c in C; a b c. Justify your answer.

Important Notes:

  • For this problem, you only need to submit the implementation of four methods in Java (positiveKeySum, deleteMin, printTree, and printPostorder). It is not required that you implement the main method.

  • In the part (e), you dont need to submit any implementation in Java and just you must answer the question.

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Database Support For Data Mining Applications Discovering Knowledge With Inductive Queries Lnai 2682

Authors: Rosa Meo ,Pier L. Lanzi ,Mika Klemettinen

2004th Edition

3540224793, 978-3540224792

More Books

Students also viewed these Databases questions

Question

4 How can you create a better online image for yourself?

Answered: 1 week ago