unordered_map функция hash_function () в C ++ STL

Опубликовано: 3 Декабря, 2021

Unordered_map :: hash_function () - это встроенная функция в C ++ STL, которая используется для получения хеш-функции. Эта хеш-функция является унарной функцией, которая принимает только один аргумент и на его основе возвращает уникальное значение типа size_t.

Синтаксис:

unordered_map_name.hash_function ()

Параметр: функция не принимает никаких параметров.

Возвращаемое значение: функция возвращает хеш-функцию.

Сложность времени: Время Сложность этой функции постоянна O (1).

Ниже программы иллюстрируют функцию unordered_map :: hash_function ().

Пример 1

// C++ program to illustrate the
// unordered_map::hash_function()
#include <bits/stdc++.h>
using namespace std;
int main()
{
// declaration
unordered_map<string, string> sample;
// inserts key and elements
sample.insert({ "Ankit" , "MNNIT" });
sample.insert({ "Ram" , "MNNIT" });
sample.insert({ "Manoj" , "Trichy" });
sample.insert({ "geeks" , "geeks" });
// use of hash_function
unordered_map<string, string>::hasher fn
= sample.hash_function();
cout << fn( "geeks" ) << endl;
// print the key and elements
cout << "Key and Elements: " ;
for ( auto it = sample.begin(); it != sample.end(); it++) {
cout << " {" << it->first << ":"
<< it->second << "}, " ;
}
return 0;
}
Выход:
15276750567035005396
Ключевые и элементы: 
{geeks: geeks}, 
{Manoj: Trichy}, 
{Ankit: MNNIT}, 
{Ram: MNNIT},

Пример 2

// C++ program to illustrate the
// unordered_map::hash_function()
#include <bits/stdc++.h>
using namespace std;
int main()
{
// declaration
unordered_map< int , int > sample;
// inserts key and elements
sample.insert({ 1, 5 });
sample.insert({ 2, 6 });
sample.insert({ 3, 6 });
sample.insert({ 4, 7 });
// use of hash_function
unordered_map< int , int >::hasher fn
= sample.hash_function();
cout << fn(4) << endl;
// print the key and elements
cout << "Key and Elements: " ;
for ( auto it = sample.begin(); it != sample.end(); it++) {
cout << " {" << it->first << ":"
<< it->second << "}, " ;
}
return 0;
}
Выход:
4
Ключевые и элементы: 
{4: 7}, 
{3: 6}, 
{1: 5}, 
{2: 6},
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .