Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

ฟังก์ชั่นสำรอง unordered_multimap () ใน C ++ STL


ฟังก์ชัน unordered_multimap reserve() ใน C++ STL กำหนดจำนวนที่ฝากข้อมูลในคอนเทนเนอร์เป็นจำนวนที่เหมาะสมที่สุดเพื่อให้มีองค์ประกอบอย่างน้อย n รายการ

ถ้า n มากกว่าจำนวนที่เก็บข้อมูลปัจจุบันคูณด้วย max_load_factor จำนวนที่เก็บข้อมูลของคอนเทนเนอร์จะเพิ่มขึ้นและมีการบังคับแฮชซ้ำ

Reserve () ไม่ส่งคืนสิ่งใดและใช้ n เป็นพารามิเตอร์ซึ่งระบุจำนวนองค์ประกอบขั้นต่ำตามความจุขั้นต่ำที่ร้องขอ

อัลกอริทึม

Begin
   Declare the vector m.
   m.reserve(6) = the size is reserved for the bucket to contain minimum number of one elements.
   Insert the key value pairs.
   Print the result.
End.

โค้ดตัวอย่าง

#include<iostream>
#include <bits/stdc++.h>
using namespace std;

int main() {
   unordered_map<char, int> m;      //declaring m as map container

   m.reserve(6);//restricting the most appropriate value of
   m.insert (pair<char, int>('b', 10)); // inserting values
   m.insert (pair<char, int>('a', 20));

   cout << "The size is: " << m.size();
   cout << "\nKey and values are: ";
   for (auto it = m.begin(); it != m.end(); it++) {
      cout << "{" << it->first << ", " << it->second << "} "; //printing the values of map container
   }
   return 0;
}

ผลลัพธ์

The size is: 2
Key and values are: {a, 20} {b, 10}