gpt4 book ai didi

data-structures - 完美的列表结构?

转载 作者:行者123 更新时间:2023-12-04 07:12:21 25 4
gpt4 key购买 nike

理论上是否有可能拥有一个数据结构

O(1) 访问、插入、删除时间

和动态长度?

我猜还没有发明一个,或者我们会完全放弃使用数组和链表(单独),而是选择使用其中之一。

是否有证据表明这不可能发生,因此访问时间、插入时间和删除时间之间存在某种关系(如能量守恒),这表明如果其中一个时间变得恒定,另一个时间必须是线性的或与之相关的某个时间。

最佳答案

当前架构中不存在这样的数据结构。

非正式推理:

  • 变得比O(n)更好插入/删除时间,您需要某种树数据结构
  • 获取O(1)随机访问,你负担不起遍历树

  • 您能做的最好的事情就是获取 O(log n)对于所有这些操作。这是一个相当好的折衷方案,并且有很多数据结构可以实现这一点(例如 Skip List)。

    您还可以通过使用具有高分支因子的树来“接近 O(1)”。例如,Clojure 的持久化数据结构使用 32 路树,它为您提供 O(log32 n)操作。出于实际目的,这非常接近 O(1) (即对于您可能在现实世界的收藏中遇到的现实尺寸 n)

    关于data-structures - 完美的列表结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21655380/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com