-3

我们知道最好的搜索算法是二叉搜索树。考虑一个复合表中的主键。SQL Server 是否BST用于数据搜索?如果是,它如何搜索多个列BST?如果它不使用它使用BST什么其他算法剂量?该算法的时间复杂度是多少?

请分享你知道的任何东西:)

4

2 回答 2

2

它使用完全相同的算法,具有完全相同的复杂性。

想象一下,您有一个字段 PK,其值为“A”、“B”、“C”等等——没问题,对吧?

现在想象这些键是“AA”、“BB”、“CC”等等——没问题,对吧?这只是一个两个字符的键。

与“A”相比,复合 PK 就像“AA” - 从概念上讲。如果您的 PK 跨越两个值为“A”和“B”的 1 字符列,则可以将您的键与单列值“AB”进行比较。

简单地说,您的关键比较现在比较 X 字段,而不仅仅是一个。

于 2013-01-22T20:46:39.757 回答
0

树搜索依赖于键的抽象概念。密钥需要与其他密钥具有可比性,仅此而已。搜索算法不需要知道键是否由多个字段组成。它只知道密钥是可比的。

于 2013-01-22T20:46:21.250 回答