从树的节点获取信息

问题描述:

我正在使用树数据结构并试图想出一种方法来计算我可以从树的节点获得的信息。从树的节点获取信息

我想知道是否有任何现有的技术,可以分配更高的数值重要性,以较低的水平出现较低的水平(距离根的树)比相同的节点出现在较高的水平和高频率的节点。举例来说,我想给节点Book更多的意义,在第二级出现一次, 然后在第三级出现三次。

将意识到任何建议/指针,以实现类似的技术。

感谢,

Prateek

+0

在树中,每个节点都不会出现一次?如果一个节点“出现”不止一次,则相当于一个循环,在这种情况下,它不再是一棵树。 – WhirlWind 2010-05-20 01:04:12

+0

根据节点出现的特定分支和节点的级别来唯一标识该节点。因此,它没有。但是节点的标签可以相同。 – jainp 2010-05-20 01:27:30

一个度量我只是想是这样的:一个标签k,让它的“价值”是它出现在水平的总和。所以,如果它出现在根和根的左边孩子,让它的值为1.

然后,你最“重要的”标签是那些最低的值。

编辑:这将使根比它的孩子的标签更重要,即使它们都是相同的。所以,按出现次数进行一些缩放可能是按顺序的。

这取决于你想在每个级别给它多少意义。

只需乘以一个随着树向下移动而减少的数字。例如,n_nodes * 1/(3^n),其中n是树的级别。因此,级别2上的节点的值为1/4,级别3上的3个节点的值为1/9。因此,级别2上的单个节点更重要。

根据自己的喜好调整分母。只要它随着n增加,它将对树中较高的节点给予更多的重要性。