# Python: Binary Search Tree (BST)- Exercises, Practice, Solution

## Binary Search Tree: [ 6 exercises with solution]

[An editor is available at the bottom of the page to write and execute the scripts. Go to the editor]

1. Write a Python program to create a Balanced Binary Search Tree (BST) using an array of elements where array elements are sorted in ascending order.
Click me to see the sample solution

2. Write a Python program to find the closest value to a given target value in a given non-empty Binary Search Tree (BST) of unique values.
Click me to see the sample solution

3. Write a Python program to check whether a given binary tree is a valid binary search tree (BST) or not.

Let a binary search tree (BST) is defined as follows:
The left subtree of a node contains only nodes with keys less than the node's key.
The right subtree of a node contains only nodes with keys greater than the node's key.
Both the left and right subtrees must also be binary search trees.

```Example 1:
2
/ \
1   3
Binary tree [2,1,3], return true.
Example 2:
1
/ \
2   3
Binary tree [1,2,3], return false.
```

Click me to see the sample solution

4. Write a Python program to delete a node with the given key in a given binary search tree (BST).
Note: Search for a node to remove. If the node is found, delete the node.
Click me to see the sample solution

5. Write a Python program to convert a given array of elements to a height balanced Binary Search Tree (BST).
Click me to see the sample solution

6. Write a Python program to find the kth smallest element in a given binary search tree.
Click me to see the sample solution

Python Code Editor:

More to Come !

Do not submit any solution of the above exercises at here, if you want to contribute go to the appropriate exercise page.

﻿

## Python: Tips of the Day

Free up Memory:

• Manual garbage collection can be performed on timely or event based mechanism.
```import gc
collected_objects = gc.collect()
```

We are closing our Disqus commenting system for some maintenanace issues. You may write to us at reach[at]yahoo[dot]com or visit us at Facebook