Пытаюсь написать функцию deleteNode() для удаления узла и всех его прямых и опосредованных детей. По идее эта функция должна вызываться рекурсивно, если дети есть, для каждого из детей. А если у них есть дети, то для каждого из их детей. Когда же у узла не остается детей, то удалять его методом removeNode(). Как бы это сотворить?