O que é o hashing e as suas técnicas?
O hashing é uma técnica de recodificação de um pedaço de informação para um endereço de tabela. O endereço da tabela contém então um endereço para esse pedaço de informação e outras informações associadas a ela que você deseja recuperar. Por exemplo, Maxwell Smart pode ser hashed em 14556 um endereço numa tabela que vai de 14000 a 15000. A localização 14556 pode conter um endereço 12662 que é o endereço da cadeia "Maxwell Smart, 1226 E. Long Is, 00123". Maxwell Smart é considerado a sua chave de pesquisa e se esta corresponder ao conteúdo do endereço do código hash, sabe que tem a localização correcta. Caso contrário, tem de procurar na tabela de excesso. Se estiver a carregar a tabela de códigos hash siga o mesmo procedimento, excepto se encontrar o endereço hash vazio, sabe que pode adicionar o endereço da sua string à tabela, caso contrário terá de colocar o endereço na tabela de overflow.Existem muitas variações disto. Algumas linguagens têm esta capacidade integrada como D={} em Python e Dict() em Julia. Se você quer velocidade, use Julia. É uma linguagem bastante fácil de aprender e não usa muita confusão de pontuação. É muito fácil de ler. (veja: www.julialan.org)