Delete a node from BST
Submissions: 15686   Accuracy:

34.76%

  Difficulty: Medium   Marks: 4

Given a Binary Search Tree (BST) and a node no 'x' , your task is to delete the node 'x' from the BST . You are required to complete the function deleteNode. You should not read any input from stdin/console. There are multiple test cases. For each test case, this method will be called individually.

Input (only to be used for Expected Output):
The first line of the input contains an integer 'T' denoting the number of test cases. Then 'T' test cases follow. Each test case consists of three lines. Description of  test cases is as follows:
The First line of each test case contains an integer 'N' which denotes the no of nodes in the BST.   .
The Second line of each test case contains 'N' space separated values  of the nodes in the BST.
The Third line of each test case contains an integer 'x' the value of the node to be deleted from the BST.

Output:
You are required to complete the function deleteNode which takes two arguments. The first being the root of the tree, and an integer 'x' denoting the node to be deleted from the BST . The function returns a pointer to the root of the modified BST .


Constraints:
1 <= T <= 50
1 <= N <= 50


Example:
Input

1
7
2 81 87 42 66 90 45 
81
Output
2 42 45 66 87 90


Note : Here the output is the inorder traversal of the BST.

 

** For More Input/Output Examples Use 'Expected Output' option **

Contributor: Amit Khandelwal
Author: Shubham Joshi 1


Need help with your code? Please use ide.geeksforgeeks.org, generate link and share the link here.

to report an issue on this page.