【问题标题】:Data structure to manipulate long strings of bits操作长串位的数据结构
【发布时间】:2012-03-12 18:16:50
【问题描述】:

在 Python 中,n 位(其中n 约为 10000)的最佳数据结构是什么结构

【问题讨论】:

    标签: python bit-manipulation bitvector


    【解决方案1】:

    除了 MartinStettner 提到的那些之外,还有 bitarray 模块,我在多个场合都使用过,效果很好。

    PS:我的第 100 个答案,哇!

    【讨论】:

    • 可能比我的建议更高效,因为它是用 C 实现的。OTOH 安装它可能会遇到一些麻烦,因为它需要一个工作的 C 编译器。有关可能的解决方案,请参阅stackoverflow.com/questions/780127/… :)
    【解决方案2】:

    “快”总是相对的 :)

    BitVector 包似乎可以满足您的需求。不过,我没有关于性能方面的经验。

    还有一个BitString 实现。也许您做一些测量来找出哪一个更能满足您的特定需求?

    如果您不想要特定的类并且不需要诸如切片或位计数之类的东西,您可能只需使用 python 的 long 值即可,它们是任意长度的整数。这可能是性能最高的实现。

    This qestion 似乎很相似,尽管作者需要的位数更少,并且需要一个标准库。

    【讨论】:

      猜你喜欢
      • 2014-12-03
      • 2019-06-13
      • 1970-01-01
      • 2012-07-30
      • 1970-01-01
      • 1970-01-01
      • 2018-11-28
      • 2014-02-07
      • 1970-01-01
      相关资源
      最近更新 更多