我有一棵树形结构,每个节点可以有无限的子节点,它模拟了博客的评论。
我正在尝试找出给定特定评论的ID后,该评论在树中所处的深度/级别。
我正在遵循这篇关于二叉树的指南,但是当我将其适应为非二叉树时遇到了一些问题。
以下是我迄今为止的尝试(使用Swift):
我正在尝试找出给定特定评论的ID后,该评论在树中所处的深度/级别。
我正在遵循这篇关于二叉树的指南,但是当我将其适应为非二叉树时遇到了一些问题。
以下是我迄今为止的尝试(使用Swift):
func commentLevelRecursive(comment: Comment, commentID: String, currentLevel: Int) -> Int {
if comment.identifier == commentID {
return currentLevel
}
var newLevel = currentLevel
for reply in comment.replies {
newLevel = commentLevelRecursive(reply, commentID: commentID, currentLevel: currentLevel + 1)
}
return newLevel
}
但是它似乎总是返回1。我认为这是因为newLevel总是从0增加到1然后返回。
有人能给我一些见解,告诉我哪里出了问题吗?
newLevel
设置,它不会输出正确的值。 - Doug Smith