Folding - técnica que envolve a aplicação de uma função aritmética tal como adição, ou de uma função lógica, como exclusivo, apartes diferentes do valor do campo de Hash para calcular o endereço Hash.
Com relação à colisão, há vários métodos para resolução de colisão:
1- Open Adressing (Endereço Aberto): A partir da posição já ocupada pelo enderço hash, o programa prossegue a verficação, pela ordem das posições subsequentes, até que seja encontrada uma posição não uitlizada(vazia).
2 - Encadeamento (Chaning): Neste méotdo são mantidas várias posições do overflow, por meio da extensão do vetor por um número de posições de overflow. Uma colisão é resolvida posicionando o novo registro em uma localização de overflow não utilizada e achando o endereço de overflow no ponteiro do endereço hash ocupado. Assim, será mantida uma lista encadeada de registros de overflow para cada endereço hash.
3 - Hashing múltiplo: O programa aplicará uma segunda função hash caso a primeira resulte em colisão. Se novamente ocorrer uma colisão, o programa usará open addressing ou aplicará uma terceira função hash, usando open addressin necessário.
[Navathe]
Fernando Novaes