这不完全是家庭作业,但我需要在课堂上理解它。语言并不重要,伪代码就可以了。
编写“静态 K-ary”树类的递归成员函数,用于计算树中的节点数。
我认为签名看起来像这样:
int countNodes(Node<AnyType> t, ctr, k){}
我不知道如何浏览k个孩子。在二叉树中,我会检查左右。谁能给我一个例子?
您可以将递归方程想象为:
从一个节点开始的节点总数为1 + number of total children
。然后可以找到总节点数如下:
def count(node):
numOfNodes = 1
for child in node.children:
numOfNodes += count(child)
return numOfNodes
伪代码:
count(r)
result = 1
for each child node k
result = result + count(k)
return result