Пример #1
0
int main()
{
    int a[] = {4,1,3,5,2};

    Treap bst = Treap();

    for (int i=0; i<5; i++)
    {
        pair< Treap, Treap > splitedTreap = bst.SplitByVal(a[i]);
        Treap singleNodeTreap = Treap(a[i], 1);

        bst = splitedTreap.X.Join(singleNodeTreap);
        bst = bst.Join(splitedTreap.Y);
    }

    bst.Print();
    return 0;
}