Trees and Graphs‎ > ‎

Sorted Array to BST

Convert a sorted array to a Balanced Binary Search Tree.

Node *SortedArrayToBST(int *arrint startint end)
{
    if (start > end)
        return nullptr;
 
    int mid = start + (end - start) / 2;
    Node *n = new Node();
    n->value = arr[mid];
    n->left = SortedArrayToBST(arrstart, mid - 1);
    n->right = SortedArrayToBST(arr, mid + 1, end);
 
    return n;
}