1
我已經找到了找到外部節點的方法,但我不知道要計算內部節點,所以請有人幫忙。如何在二叉樹中查找內部節點?
我已經找到了找到外部節點的方法,但我不知道要計算內部節點,所以請有人幫忙。如何在二叉樹中查找內部節點?
你可以在下面的僞代碼轉換爲任何語言,按您的喜好。
function count_internal_nodes(curr):
if curr == null: return 0
else if curr is leaf: return 0
else: return 1 + count_internal_node(curr.left) +
count_internal_nodes(curr.right)
你可以試試這個算法中
getInteriorNodes(self)
count = 0
hasLeft, hasRight = self.left<>null, self.right <>null
if (hasLeft)
count += self.left.getInteriorNodes()
else if (hasRight)
count += self.right.getInteriorNodes()
else if ((hasLeft || hasRight) && self.parent)
count += 1
return count
你能轉換c?中的代碼嗎? –