Source: https://cours.etsmtl.ca/mgr850/documents/cours/Hiver2014/MGR850_H14_Cours-05_hachage.pdf