public bool IsTerminal(Queue<Element> elements)
{
if(elements.Count == 0)
{
return _nodes == null;
}
else
{
Element element = elements.Dequeue();
if (!_nodes.ContainsKey(element))
{
throw new System.Exception("Elements not sorted");
}
return _nodes[element].IsTerminal(elements);
}
}