Long before Perl and C++ were invented, a hashing algorithm meant mapping the first so many bytes of the key to a starting address, these being designed to be spread evenly across the total available addressing space, and then adding the remainder of the key and the value in sequentially (this needs an end-pointer to be stored at the landing point). Old school hash lookup expects therefore to land immediately on the full match value most of the time and worst case have to trawl along sequentially to find it from there, but not too far to have performance impact. Somehow it looks like this problem would tempt me into going that far old school to achieve all the theoretical benefits, especially if straight C is an option.

One world, one people


In reply to Re: Perl Hashes in C? by anonymized user 468275
in thread Perl Hashes in C? by BrianP

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.