• 締切済み

多次元配列から重複を削除

Perlにて$f[i][j]のような2次元配列でデータを格納しています。 ここの[i]列には重複したデータが入っているので、 それを排除して[i]列の重複なしの配列を新たに作りたいのですが うまくいきません。 for ($j=0; $j<= $index; $j++){ if($chlist[j]==$f[$i][0]){ $chlist[j]==$f[$i][0]; last; } } こんな感じで作ってみたのですが永遠にデータが入りません。

みんなの回答

  • ryu_chan
  • ベストアンサー率37% (69/186)
回答No.2

こんな感じで重複データを削除できると思います。 @chlist = map { my %seen; [grep !$seen{$_}++, @$_] } @f;

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

うれしいかどうかは別としてハッシュのキーが (そのハッシュの中で) 一意であることを使うとプログラム上は簡単.

専門家に質問してみよう