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

มัลติแมป ::นับ () ใน C ++ STL


ในบทความนี้ เราจะพูดถึงการทำงาน ไวยากรณ์ และตัวอย่างของฟังก์ชัน multimap::count() ใน C++ STL

มัลติแมปใน C++ STL คืออะไร

Multimaps เป็นคอนเทนเนอร์ที่เชื่อมโยงกัน ซึ่งคล้ายกับคอนเทนเนอร์แผนที่ นอกจากนี้ยังอำนวยความสะดวกในการจัดเก็บองค์ประกอบที่เกิดจากการรวมกันของคีย์-ค่าและค่าที่แมปในลำดับเฉพาะ ในคอนเทนเนอร์แบบหลายแผนที่ มีหลายองค์ประกอบที่เชื่อมโยงกับคีย์เดียวกันได้ ข้อมูลจะถูกจัดเรียงภายในเสมอโดยใช้คีย์ที่เกี่ยวข้อง

multimap::count() คืออะไร

ฟังก์ชัน Multimap::count() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว count() ใช้เพื่อนับจำนวนองค์ประกอบที่มีอยู่ด้วยคีย์เฉพาะใน multimap ที่เกี่ยวข้องกับฟังก์ชัน

ฟังก์ชันนี้จะคืนค่าศูนย์หากไม่มีคีย์ในคอนเทนเนอร์มัลติแมป

ไวยากรณ์

multimap_name.count(key_type& key);

พารามิเตอร์

ฟังก์ชันยอมรับพารามิเตอร์ต่อไปนี้ -

  • คีย์ − นี่คือคีย์ที่เราต้องการค้นหาและนับจำนวนองค์ประกอบที่เกี่ยวข้องกับคีย์

คืนค่า

ฟังก์ชันนี้จะคืนค่าจำนวนเต็ม นั่นคือ จำนวนขององค์ประกอบที่มีคีย์เดียวกัน

ป้อนข้อมูล

std::multimap<char, int> odd, eve;
odd.insert(make_pair(‘a’, 1));
odd.insert(make_pair(‘a, 3));
odd.insert(make_pair(‘c’, 5));
odd.count(‘a’);

ผลลัพธ์

2

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main(){
   //create the container
   multimap<int, int> mul;
   //insert using emplace
   mul.emplace_hint(mul.begin(), 1, 10);
   mul.emplace_hint(mul.begin(), 2, 20);
   mul.emplace_hint(mul.begin(), 2, 30);
   mul.emplace_hint(mul.begin(), 1, 40);
   mul.emplace_hint(mul.begin(), 1, 50);
   mul.emplace_hint(mul.begin(), 5, 60);
   cout << "\nElements in multimap is : \n";
   cout <<"KEY\tELEMENT\n";
   for (auto i = mul.begin(); i!= mul.end(); i++){
      cout << i->first << "\t" << i->second << endl;
   }
   cout<<"Key 1 appears " << mul.count(1) <<" times in the multimap\n";
   cout<<"Key 2 appears " << mul.count(2) <<" times in the multimap\n";
   return 0;
}

ผลลัพธ์

ถ้าเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้ -

Elements in multimap is :
KEY ELEMENT
1 50
1 40
1 10
2 30
2 20
5 60
Key 1 appears 3 times in the multimap
Key 2 appears 2 times in the multimap