Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

The following code (studied in class) is part of the code for deleting a node from a binary search tree for the case where neither

  1. The following code (studied in class) is part of the code for deleting a node from a binary search tree for the case where neither of the two sub-trees of the deleted node is empty. This code replaces the deleted item by the largest item in the left sub-tree.

// Neither subtree is empty. Find largest element of left subtree

Node largestParent = toBeRemoved;

Node largest = toBeRemoved.getLeft();

while (largest.getRight() != null){

largestParent = largest; largest = largest.getRight();

}

toBeRemoved.setData(largest.getData());

if (largestParent == toBeRemoved)

{ largestParent.setLeft(largest.getLeft()); }

else { largestParent.setRight(largest.getLeft());}

Modify this code so that it replaces the deleted item with the smallest item in the right sub-tree instead of replacing it with the largest item in the left sub-tree. Similar to the above code, your modified code should be iterative (using a loop) and not recursive.

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_2

Step: 3

blur-text-image_3

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

Databases Illuminated

Authors: Catherine M. Ricardo, Susan D. Urban, Karen C. Davis

4th Edition

1284231585, 978-1284231588

More Books

Students also viewed these Databases questions