二叉树必须有数字节点吗?二叉树可以有一个带有字符串值的节点吗?

Do binary trees have to have numeric nodes? Can a binary tree have a node with a string value?

有人告诉我二叉树必须有数值,但我觉得这是不正确的。我很确定二叉树的节点中可以有各种值。那么二叉树看起来像这样吗?:

  1
 / \
2   3

或者它们可以像这样吗?:

 "Hello"
   / \
", " "World!"

当然可以。二叉树 class 将有一个根节点对象。

然后节点 class 可以决定保存什么数据。无论是整数、原始类型还是对象。典型的节点 class 将具有左右节点指针、父节点指针和数据值。

是的,有使用二叉树存储一本phone书的例子。您可以将人员姓名和编号存储在节点中。然后按字符串名称(按字母顺序)比较两个节点,这样我们就可以得到一个看起来像您的示例(具有实际名称)的二叉树。我希望这能说明问题。