Я пытаюсь разработать рекурсивный алгоритм, который подсчитывает вхождение объекта в двоичное дерево.На самом деле, мне удалось записать один, но я не уверен, что он работает хорошо или предпочтительнее, если это не так, пожалуйста, помогите мне исправить это.
Algorithm count(Node, desiredObject)
counter = 0
if(Node is empty)
return counter
else
if(Node's data is equal to the desiredObject's data)
counter := counter + 1
leftCounter = count(Node's left child, desiredObject)
rightCounter = count(Node's right child, desiredObject)
return counter + leftCounter + rightCounter