Форум программистов, компьютерный форум CyberForum.ru

Своя функция хеширования для unordered_map - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Нахождения среднего числа в строке http://www.cyberforum.ru/cpp-beginners/thread425624.html
Есть строки 3451425354 3451425325 34514345354 и тд есть формула для четного количества чисел в строке и для нечетного определяющая медиану(число по середине) четного - ((N/2) +(N/2+1))/2
C++ Суммировать наибольшие элементы столбцов матрицы Помогите решить задачу : Дана матрица А(nxn). Получить x1xn+x2xn-1+…+xnx1, где xk – наибольшее значение элементов k-го столбца данной матрицы. http://www.cyberforum.ru/cpp-beginners/thread425607.html
C++ Задача коммивояжера. Деревянный алгоритм.
Здравствуйте. Ищу информацию(а можно и реализацию) о решении задачи коммивояжёра на основе деревянного алгоритма (он же метод минимального остовного дерева).
C++ Ошибка в книге Скиены "Олимпиадные задачи по програмированию"?!
Итак, всем привет:) Начал я на днях читать книгу Скиены, сейчас на главе про структуры даных. В книге приведен премер задачи "Сборы на войну" где используются очереди. Но проблема в том что програма не работает. Немного почитав про очереди увидел что в примере они об’являются неправильно(?), а некоторые функции которые использует автор вобще несуществуют(init_queue). Привожу код...
C++ Написать программу с использованием структуры, состоящей из переменных, определяющих объект http://www.cyberforum.ru/cpp-beginners/thread425592.html
«Студент»: фамилия, имя, год рождения, номер группы, оценки по каждому экзамену. Объявить массив структур. Ввод элементов структуры осуществляется с клавиатуры: 1. Осуществить поиск по фамилии, выдать на экран данные о студенте, и на основе анализа первого символа переменной «номер группы» определить курс, на котором он обучается. 2. Определить количество отличников в группе и выдать на экран...
C++ Умножение по модулю Здравствуйте уважаемые программисты, вопрос у меня весьма специфический, надеюсь создал тему в правильном месте. Собственно и он. Дано задание: "Во входном файле в первой строке записаны символы некоторое число, например 7. В двух следующих строках целочисленные коэффиценты двух многочленов (0<=коэфицент<число) через пробел. Разработать программу умножения многочленов по модулю заданного... подробнее

Показать сообщение отдельно
Artishok
ЧакЭ одобряЭ
 Аватар для Artishok
277 / 276 / 32
Регистрация: 27.12.2009
Сообщений: 1,767
10.01.2012, 16:48     Своя функция хеширования для unordered_map
правильно ли я её реализовал или нет?(компилируется нормально)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
HCRYPTHASH GetHash(const std::string *var)
{
    HCRYPTHASH hash;
    HCRYPTPROV prov;
    BYTE *buf1=(BYTE*)var->c_str();
    DWORD buf1len=strlen((char*)buf1)+1;
    ::CryptAcquireContext(&prov,NULL,NULL,PROV_RSA_AES,0);
    ::CryptCreateHash(prov,CALG_MD4,0,0,&hash);
    ::CryptHashData(hash,buf1,buf1len,0);
    return hash;
}
typedef struct
{
    HCRYPTHASH operator() (const std::string &k) const 
    { 
        return GetHash(&k); 
    }
}HASHER;
......
std::tr1::unordered_map<std::string,std::string,HASHER> table;
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:55. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru