Given a Binary Search Tree (BST) and a node no** 'x'**, your task is to delete the node **'x'** from the BST.

**Note: **The duplicates are not inserted in the BST.

**Input Format:**

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 number 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 Format:**

For each testcase, in a new line, print the inorder traversal.

**Your Task:**

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:**

2

7

2 81 87 42 66 90 45

81

6

5 6 7 4 3 2

7

2 42 45 66 87 90

2 3 4 5 6

**Explanation:
Testcase 1:** After deleting 81 from BST, we have nodes left as 2 42 45 66 87 90.

Author: Shubham Joshi 1

If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.

codersanjeev | 66 |

snow_den_ | 60 |

BoggavarapuRamSaranSaiSrinivasGupta | 60 |

rajupraaa1234 | 53 |

SUZAKU | 49 |

mr_kksparrow | 433 |

manvirag982 | 258 |

snow_den_ | 232 |

arpit_anshuman | 228 |

SoumyaKaushik | 205 |

blackshadows | 5331 |

Ibrahim Nash | 5219 |

akhayrutdinov | 5111 |

mb1973 | 4929 |

Quandray | 4567 |

Login to report an issue on this page.