重複している項目(複数登場する項目)を見つけ出す簡単な方法 | やすのブログ

やすのブログ

車、コンピューター全般、ネット関係、に興味のある記事を書きます。

元SE・PGです。

最近ふと思いついた事ですがプログラマーなどでは常識な重複項目を見つけ出す方法についてです。

(重複排除のアルゴリズム)

 

非常に短い説明文で済みますのでお付き合いください。

 

・まずは重複があるかどうかを調べる一覧をソート(大きい順、小さい順どちらでもOKで並べ替えます)します。

 Excelなどでしたらソートは簡単だと思います。

 連絡先などでしたらメールアドレスや電話番号の並び順でソートするといいかもいいかもしれません。

 

・この状態で重複している項目がある場合は隣同士に並んでいることになりますので同じ物が並んでいないか先頭から順に調べます

 

・もし隣同士に並んでいる重複項目を見つけたら要らない方を削除したり1つの項目にまとめたりします。

 

とこんな感じです。

 

重複して並んでいる項目の数を数えればそれぞれの項目ごとの出現回数を数える事などにも使えます。

 

応用編としてはこれで重複してほしくない住所録一覧を作った時にソートする項目の選択で「電話番号」などを使ってみた場合に、例として一世帯の家族がみんな固定電話で登録されているような場合は同じ「電話番号」が重複して見つかりますのでこのような場合は「電話番号」だけでの個人の特定はふさわしくないと確認できたりします。

 

同じように上記の住所録での「電話番号」+「生年月日」で個人の特定はどうでしょう?

このような場合でももし同一家族に双子の方がいらっしゃったら「電話番号」+「生年月日」も同じになりますので+で「氏名」も入れておいたほうがいいかもしれません。

 

重複項目の検出方法はソートさえできれば見つけ出す原理は簡単ですので日常生活にお役立てください。