Python 備忘録: 集合の表現

Python には組み込みのデータ型として set型が用意されている.C言語やJavaにはない便利な型ではあるが,正整数の集合を表すなら int型を用いることで表現できる.その方法では整数の2進法の各桁 (ビット) と集合の要素である整数を対応させる.より具体的には,集合Sを,2進法n桁の数 (anan−1 . . . a2a1)2 (各ai は0もしくは1) を用いて,i が集合Sの要素であればai = 1,そうでなければ,ai = 0として表す.例えば,集合 {1, 3, 4, 8} は (10001101)2 = (141)10 の整数で表現される.

Python では int型の桁数に制限がないのでどんなに大きな集合でも表現できるが,int型が32bitであるような言語では要素数が32までの集合しか表現できない点に注意しよう.Python の set型で使える基本操作や集合演算の実装方法はまた次回に.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です