【发布时间】:2017-06-27 04:44:08
【问题描述】:
我读到它是 log(n+1)
目前我知道:
对于 h = 1,最小节点数 = 2。
对于 h = 2,最小节点 = 4。
对于 h = 3,最小节点 = 10。
然而,这些纯粹是通过使用红黑树的规则来追踪它来完成的。
在试图找到这个时我应该注意黑色高度还是我的方法/计算完全错误?
【问题讨论】:
标签: algorithm binary-search-tree red-black-tree
我读到它是 log(n+1)
目前我知道:
对于 h = 1,最小节点数 = 2。
对于 h = 2,最小节点 = 4。
对于 h = 3,最小节点 = 10。
然而,这些纯粹是通过使用红黑树的规则来追踪它来完成的。
在试图找到这个时我应该注意黑色高度还是我的方法/计算完全错误?
【问题讨论】:
标签: algorithm binary-search-tree red-black-tree
我们可以递归地找到最小节点数。
count_minimum_node 将返回达到高度 h 的节点数。
int count_node(int h)
{
int sum = h;
for(int i=1; i<=h-2; i++) sum += count_node(i);
return sum;
}
int count_minimum_node(int h) { return count_node(h+1); }
【讨论】: