Big o 两种数据结构的大O计算

Big o 两种数据结构的大O计算,big-o,Big O,如果我有两个链接在一起的数据结构(例如,链表的每个节点都包含一个AVL树),那么当搜索一个数据项时,效率会更高吗 O(N)+O(logN)=O(N),使用最低效的操作(链表搜索) 或 O(N)*O(logN)=O(NlogN) 提前谢谢让我明白你想问什么 你是说,在链表中有每个节点,如果每个节点都有一个avl树的结构,那么时间复杂度是多少 显然是O(nlogn)…这不是枚举结构中所有节点的时间复杂性吗?如果我只是在搜索一个项目(如果我知道它属于链接列表的哪个节点),那么它不是O(N)吗?谢谢

如果我有两个链接在一起的数据结构(例如,链表的每个节点都包含一个AVL树),那么当搜索一个数据项时,效率会更高吗

  • O(N)+O(logN)=O(N),使用最低效的操作(链表搜索) 或
  • O(N)*O(logN)=O(NlogN)

提前谢谢

让我明白你想问什么

你是说,在链表中有每个节点,如果每个节点都有一个avl树的结构,那么时间复杂度是多少


显然是O(nlogn)…

这不是枚举结构中所有节点的时间复杂性吗?如果我只是在搜索一个项目(如果我知道它属于链接列表的哪个节点),那么它不是O(N)吗?谢谢你的帮助我想是O(NlogN).但是您没有提到链表是按升序或降序排列的…通常链表不会具有排序顺序的属性。如果是二叉搜索树或avl树,则它将具有最大堆的最小堆的明确结构。但是链表不会具有该属性。我鼓励讨论。avl树您提到的将只服从树的根,它是链表的节点之一。因此链表的每个节点都维护avl树。因此,如果链表中有n个节点,我们就有n个avl树。但是我们不知道搜索项目的确切位置。因此,O(nlogn)如果您认为我的答案为您提供了合理的答案,那么您可以通过单击我的答案的增长点来提升我的答案。好的,对不起我的解释含糊不清,我将再次尝试-我的链接列表正常,因此O(N)搜索效率。每个节点包含一个AVL/二叉树,因此O(logN)搜索效率很高。当我搜索一个特定的项目时,我知道要搜索链接列表的哪个节点,它不是O(N)+O(logN)=O(N)吗?我想如果我搜索每个链表节点的AVL树,那么由于嵌套搜索操作,它将是O(N)*O(logN)=O(NlogN)。再次感谢你的帮助。