集合
10668
views
Python の集合は順序のない要素の集まりです。
Python の集合(set)は、重複しない要素の集まりを表すデータ型だ。数学の集合論をベースにしており、要素の順序は保証されな...
集合演算は、複数の集合を組み合わせて新しい集合を得る操作だ。Python では演算子とメソッドの両方で実行できる。 和集合(Un...
集合の包含関係を調べることで、ある集合が別の集合に含まれるかどうかを判定できる。Python では比較演算子とメソッドの両方で判...
frozenset は変更不可能(イミュータブル)な集合だ。通常の set と同じ要素を持てるが、作成後に要素を追加・削除できな...
Python の set は内部でハッシュテーブルを使っている。これにより、要素の検索・追加・削除が平均 O(1) の計算量で実...
Python の set と dict はどちらもハッシュテーブルを基盤としているが、内部実装にはいくつかの違いがある。 基本的...
集合演算のパフォーマンスは、要素数や操作の種類によって大きく変わる。ここでは各演算の計算量と実測値を比較する。 基本操作の計算量...
カスタムクラスのインスタンスを集合に入れるには、`__hash__()` と `__eq__()` を正しく実装する必要がある。...
集合は重複を自動的に排除するため、データのユニーク化に最適だ。ここでは様々な重複排除パターンを紹介する。 基本的な重複排除 リス...
集合の O(1) 検索を活かすと、多くのアルゴリズムを効率的に実装できる。ここでは実践的な例を紹介する。 2 つの配列の共通要素...
集合内包表記(set comprehension)を使うと、ループを使わずに簡潔に集合を構築できる。リスト内包表記と同じ構文で、...
set と list は Python でよく使われるコレクション型だが、特性が大きく異なる。適切に使い分けることで、パフォーマ...
set と frozenset はどちらも集合を表すが、可変性(mutability)に違いがある。この違いが使い分けの基準にな...
Python の組み込み set と NumPy の集合演算関数は、どちらも集合的な操作を提供するが、設計思想とパフォーマンス特...
Python の set はプロセス内で完結するインメモリのデータ構造だ。一方、Redis の Set は分散環境で複数のプロセ...
Python の set と C++ の `std::unordered_set` はどちらもハッシュテーブルを基盤とするが、言...
CPython の set は `Objects/setobject.c` で実装されている。内部構造を理解することで、パフォー...
Python の set はオープンアドレス法で衝突を解決する。その核心にあるのが perturbation(摂動)を使った探索...
Python の set は要素数に応じてテーブルサイズを動的に変更する。このリサイズ戦略とメモリへの影響を詳しく見ていく。 リ...