3

Pythonでは、他のそのようなデータ構造で通常の二項演算(、、)を実行するのが速いビットの最良のデータ構造(約10000)はnですか?n&|^

4

2 に答える 2

5

「速い」は常に相対的です:)

BitVectorパッケージはあなたが必要とすることをするようですでも、パフォーマンスに関しては経験がありません。

BitStringの実装もあります。おそらく、あなたはいくつかの測定を行って、あなたの特定のニーズに対してどれがよりパフォーマンスが良いかを見つけますか?

特定のクラスが必要なく、スライスやビットカウントなどが必要ない場合longは、任意の長さの整数であるPythonの値を使用するだけで問題ない場合があります。これは、最もパフォーマンスの高い実装である可能性があります。

この質問は似ているようですが、作成者は必要なビット数が少なく、標準ライブラリが必要です。

于 2012-02-22T12:16:35.077 に答える
2

MartinStettnerが言及したものに加えて、ビット配列モジュールもあります。これは、私が複数の場面で使用して素晴らしい結果をもたらしました。

PS:私の100番目の答え、wohooo!

于 2012-02-22T13:07:50.723 に答える