セット (抽象データ型)
データの同一性は与えられた比較関数で判定されるので、外の文脈で同一かどうかは関数依存である。例えば文字列"hoge"と"HOGE"は異なるデータと見ることもできるし、大文字・小文字を区別せずに比較すれば(常に大文字化あるいは小文字化したもの同士を比較すれば)同一のデータと見ることもできるといった具合である。
そのような重複するデータを挿入しようとした場合はこれを処理する必要がある。
無視する
新しい物で置き換える
多重化する(→マルチセット参照)
狭義のセットにおいては重複データは無視されるか新しいデータで置き換えるかされる。もしここで多重化することを選択した場合は複数回の削除を行わなければ値は完全に取り除かれない。
アクセス速度は実装により様々だが、二分木(TreeSet)やハッシュテーブル(HashSet)などのデータ構造を用いて高速化を図ることが多い。