Вставка элемента в бинарное дерево.

В лабе задание: нужно вставить элемент в бинарное дерево, соблюдая какое-то там правило по вставке. Что это за правило? Пожалуйста, пример кода вставки.

public void Insert(long data)

{

if (Data == null || Data == data)

{

Data = data;

return;

}

if (Data > data)

{

if (Left == null) Left = new BinaryTree();

Insert(data, Left, this);

}

else

{

if (Right == null) Right = new BinaryTree();

Insert(data, Right, this);

}

}

Правило простое : слева меньший элемент, справа больший.

public void Insert(long data)

{

if (Data == null || Data == data)

{

Data = data;

return;

}

if (Data > data)

{

if (Left == null) Left = new BinaryTree();

Insert(data, Left, this);

}

else

{

if (Right == null) Right = new BinaryTree();

Insert(data, Right, this);

}

}