Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re: Use Hash? Array? Still confused after all these years.

by chromatic (Archbishop)
on Jul 21, 2005 at 19:30 UTC ( [id://476973]=note: print w/replies, xml ) Need Help??


in reply to Use Hash? Array? Still confused after all these years.

It depends.

If you were writing a dictionary, would you put all of the words in a list and all of the definitions in another list, then tell people to look for a word, count its position in the list, and then look for the definition in the other list at the corresponding position?

Instead, you'd probably invent something a lot like an existing dictionary, where you look up a definition directly by way of its word.

That's a hash, more or less. Maybe it's a little less efficient to flip through a few pages to try to find the right word and to find the right spot on the page, especially when if you remember that the definition you want is always number #383, but it has a lot of benefit to it as well.

How does this help you now? If you have a situation where you can arrange your data in terms of looking something up by a known value, you can use a hash. In dictionary terms, the name of the state could be the word and the name of the output file (or the filehandle or whatever) could be the definition. Every time you process a record, you look up the name of the output file in a hash using as a key the name of the state from the record.

Does that help?

Replies are listed 'Best First'.
Re^2: Use Hash? Array? Still confused after all these years.
by Anonymous Monk on Jul 22, 2005 at 14:07 UTC
    If a dictionary were like a hash, the words wouldn't be in order! (And with newer dictionaries, the order would be different each time you open the dictionary, unless the environment variable DICTIONARY_SEED is set to 0).

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://476973]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others studying the Monastery: (5)
As of 2024-03-29 07:36 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found