I was wondering why you sort the keys in each example ?

Hashes are unordered, and keys will return the keys in a random order. Try removing the sort from my code, and you'll see that in the second code example, the arrays in the %lookup "hash of arrays" data structure will be in a random order across multiple runs of the program, and the output of both code examples will be in a random order across multiple runs. This may or may not be important in your case, I just did the sort keys so that the output would always be in the same order. This can also make testing easier, since tests wouldn't have to account for the randomness. If your hashes are large then the sort may slow down your program a bit. Personally I would suggest doing sort keys for the consistency, unless you know for a fact that the order doesn't matter in your case (e.g. if all you are doing is counting), or the speed impact becomes a problem.


In reply to Re^3: search for particular elements of hash with multiple values by haukex
in thread search for particular elements of hash with multiple values by pmpmmpmp

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.