由于splay树是一种不平衡的二元搜索树(brilliant.org/wiki/splay树),它不能保证最大高度为O(log(n))。因此,我认为它不能保证最坏情况下的搜索时间为O(log(n))。
但根据bigocheatsheet。通用域名格式:
Splay树的最坏情况搜索时间为O(log(n))???
你是对的;对于不平衡树,在八字树中查找的成本可以达到Θ(n)。
许多资源(如big-O备忘单)要么简化假设,要么只是包含事实上不正确的数据。目前还不清楚他们在这里是错是错,还是在谈论摊销后的最坏情况,等等。
最好了解正在使用的数据结构的内部结构,以便了解运行时的来源。
本文向大家介绍intellij-idea 使用情况搜索,包括了intellij-idea 使用情况搜索的使用技巧和注意事项,需要的朋友参考一下 示例 查找用法/在文件中查找用法 Windows / Linux:Alt++ F7/ Ctrl+F7 OS X / macOS:Option++ F7/ Ctrl+F7 突出显示文件中的用法 在Windows / Linux的:Ctrl+ Shift+F7
null
我在学术论文中被问到过这个问题。请告诉我答案? 假设我们有一个算法,,在二维数组中查找元素x。算法 循环访问 的行,并在每个行上调用算法 直到找到 或搜索了 的所有行。 这个算法最坏的运行时间是多少 一个。如果每行中的元素都已排序? (二)如果每行中的元素未排序?
我有一个二进制搜索树,它的每个节点都有两个值。 所以它的节点是这样的。 我已经根据节点的“name”变量的升序在BST中插入了值。所以树的顺序遍历将按“name”的升序返回节点。 现在我想根据“值”变量的升序显示树节点。无需更改原始树。哪种算法/方法对此最有效?
我需要帮助解决以下问题。有一个搜索树(二进制搜索树),我需要找到一个特定的元素,以便搜索搜索树。但这只需要在伪代码中显示(因此不需要实际的搜索树,因此仅举个例子,根为75,需要搜索的元素为24)。 例如,步骤1:打印根目录,2:打印树....(直到找到正确的元素)。 到目前为止,我已经这样做了: 1) def findval (node,lookForElement):< br > 2)while