у меня есть пара
Я знаю, что значение pair.first не может быть больше 1000.
Я также знаю, что pair.second, строка, это всегда 1 слово. Никогда не более 1 слова.
Итак, чтобы построить значение Hash для пары, я делаю следующее:
pair<int,string> p;
hash<char*> H;
hash_vale = H(p.second)*1000 + p.first;
Я думаю, что это даст уникальные значения, пока хеш-значение строк не слишком велико и что H (p.second) даст 1-1 сопоставления. Являются ли эти предположения действительными?
Спасибо