Java 字符串的二叉搜索树
我有一个关于字符串的二叉搜索树是如何工作的问题。我知道并已通过检查新数据是否更新2来实现整数的二元搜索树,以构建二元决策树: 二叉决策树可以被认为是一组问题,这些问题产生了关于叶节点方面的布尔响应——方面要么存在/保持为真,要么不存在。也就是说,对于特定节点/边缘的每个后代,我们必须能够说“这个问题/答案成立”(答案可以是“真”或“假”)。例如,树皮是(正常)狗的一个侧面,但触角不是鲸鱼的一个侧面。在呈现的树中,假边总是指向左子树:这是一种避免使用真/假或Y/N标记每条边的约定 这棵树只能从现有的/外部的知识中建立,这些知识允许我们回答每种动物的每一个问题 以下是可用于构建此类树的粗略算法:Java 字符串的二叉搜索树,java,binary-tree,binary-search-tree,Java,Binary Tree,Binary Search Tree,我有一个关于字符串的二叉搜索树是如何工作的问题。我知道并已通过检查新数据是否更新2来实现整数的二元搜索树,以构建二元决策树: 二叉决策树可以被认为是一组问题,这些问题产生了关于叶节点方面的布尔响应——方面要么存在/保持为真,要么不存在。也就是说,对于特定节点/边缘的每个后代,我们必须能够说“这个问题/答案成立”(答案可以是“真”或“假”)。例如,树皮是(正常)狗的一个侧面,但触角不是鲸鱼的一个侧面。在呈现的树中,假边总是指向左子树:这是一种避免使用真/假或Y/N标记每条边的约定 这棵树只能从现有
更新,对于[二进制]: 在这种特殊情况下(添加的图表清楚显示了这一点),图表基于问题的“是”或“否”回答,表示节点之间的边缘。也就是说,树不是使用字符串值本身的顺序构建的。在这种情况下,尽管如果允许非二进制响应,每个节点可能有更多的边/子节点,但左分支始终为“false”,右分支始终为“true”可能是有意义的 决策树必须是。也就是说,图表必须首先基于问题/回答构建,这与仅基于节点之间排序的BST不同。最初的图形构建不能仅仅从一系列问题中完成,因为边不遵循内在的顺序
初始响应,对于: 与整数相同:算法不变 考虑一个函数,
compareTo(a,b)
,它将分别为ab返回-1、0或1
然后考虑在用这个契约实现一个函数时,无论是NOR B还是B类的类型(只要它们是相同的),如果这种类型支持排序:它将是整数的“原始”,并使用主机语言对字符串类型的对应字符串比较。
更新2,以构建二进制决策树:
二叉决策树可以被认为是一组问题,这些问题产生了关于叶节点方面的布尔响应——方面要么存在/保持为真,要么不存在。也就是说,对于特定节点/边缘的每个后代,我们必须能够说“这个问题/答案成立”(答案可以是“真”或“假”)。例如,树皮是(正常)狗的一个侧面,但触角不是鲸鱼的一个侧面。在呈现的树中,假边总是指向左子树:这是一种避免使用真/假或Y/N标记每条边的约定 这棵树只能从现有的/外部的知识中建立,这些知识允许我们回答每种动物的每一个问题 以下是可用于构建此类树的粗略算法:更新,对于[二进制]: 在这种特殊情况下(添加的图表清楚显示了这一点),图表基于问题的“是”或“否”回答,表示节点之间的边缘。也就是说,树不是使用字符串值本身的顺序构建的。在这种情况下,尽管如果允许非二进制响应,每个节点可能有更多的边/子节点,但左分支始终为“false”,右分支始终为“true”可能是有意义的 决策树必须是。也就是说,图表必须首先基于问题/回答构建,这与仅基于节点之间排序的BST不同。最初的图形构建不能仅仅从一系列问题中完成,因为边不遵循内在的顺序
初始响应,对于: 与整数相同:算法不变 考虑一个函数,
compareTo(a,b)
,它将分别为ab返回-1、0或1
然后考虑T
land animal?
have tentacles?------------^-------------indoor animal
have claws?-----^----jellyfish live in jungle?----^----does it bark?
eat plankton?----^----lobster bear----^----lion cat----^----dog
shark----^----whale