如果这是问这种问题的错误地方,我深表歉意,但鉴于它是基于算法的,我觉得它很合适。
我想做的是弄清楚或找出可用于以下应用的算法的名称...
目前,情况就是这样。
- 我有一个节点树,可以有任意数量的起始节点。 (不是完全一个节点树,而是我能想到的最好的类比)。
- 然后这些节点分支成任意数量的其他节点
- 资源被添加到这些节点,并递归地与所有子节点相关联。
现在,当我想获取特定资源的所有关联节点时,问题就出现了。获得所有这些很好,但不可取。我真正想做的只是检索每个关联的 top-most 节点。
编辑
这是在 JS 中完成的,使用 Sails 作为框架和 MySQL 数据源。
{
name: 'Some Node Name'
children: [] // Array of child nodes
parent: 1 // Id of the parent node or null if it is top-level
resources: [] // Array of resources associated
}
如果已经有解决此问题的算法,我将不胜感激。
谢谢。
最佳答案
如果我对问题的理解正确,那么您称为顶级资源 的节点指的是那些未被任何其他节点引用的节点;在图论方面,这些是 indegree 的那些零。从问题的描述来看,这些是 parent
为 null
的问题。
关于algorithm - 节点遍历式算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50098357/