http://www.perlmonks.org?node_id=513466


in reply to To Hash or to Array--Uniqueness is the question.

When collecting data that you only want unique values from, would you:

That depends on what your "values" are. If they are just strings or can be represented in a canonical form as strings than go ahead and use a hash. If the values in question are something more complex, then a hash isn't going to work for you as the keys of a hash must be strings.

-sauoq
"My two cents aren't worth a dime.";
  • Comment on Re: To Hash or to Array--Uniqueness is the question.

Replies are listed 'Best First'.
Re^2: To Hash or to Array--Uniqueness is the question.
by cowboy (Friar) on Dec 02, 2005 at 22:50 UTC
    Tie::RefHash can be used to allow references to be used as keys. I use it to allow the use of filehandles as a key, without losing their magic.

      Sure, but in the context of this question—which is about dealing with uniqueness—that's not likely to be very helpful. Unless, of course, the uniqueness of the reference itself is sufficient. But if you have, say, my $a = [1]; my $b = [1]; and want to insert them into a store only if an identical structure doesn't already exist in that store... Tie::RefHash probably won't help because you'll need to do a 'deep' compare.

      -sauoq
      "My two cents aren't worth a dime.";