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

ฟังก์ชันนับหลายชุด () ใน C ++ STL


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

มัลติเซ็ตใน C++ STL คืออะไร

ชุดหลายชุดคือคอนเทนเนอร์ที่คล้ายกับชุดคอนเทนเนอร์ ซึ่งหมายความว่าจะเก็บค่าต่างๆ ในรูปแบบของคีย์เหมือนกับชุดในลำดับเฉพาะ

ในชุดหลายชุด ค่าจะถูกระบุเป็นคีย์เหมือนกับชุด ความแตกต่างหลัก ระหว่าง multiset และ set คือ ชุดมีคีย์ที่แตกต่างกัน ซึ่งหมายความว่าไม่มีสองคีย์ที่เหมือนกัน ใน multiset สามารถมีค่าคีย์เดียวกันได้

คีย์หลายชุดใช้ในการสร้างแผนผังการค้นหาแบบไบนารี

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

ฟังก์ชัน multiset::count() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งกำหนดไว้ในไฟล์ส่วนหัว

ฟังก์ชันนี้นับจำนวนองค์ประกอบด้วยคีย์เฉพาะ

มัลติเซ็ตสามารถมีค่าหลายค่าของคีย์เดียวกันได้ ดังนั้นเมื่อเราต้องการนับจำนวนของค่าของคีย์เดียวกัน เราสามารถใช้ count() count() ค้นหาคีย์ในคอนเทนเนอร์ทั้งหมดและส่งคืนผลลัพธ์ หากไม่มีคีย์ที่เรากำลังมองหาในคอนเทนเนอร์ ฟังก์ชันจะคืนค่า 0

ไวยากรณ์

ms_name.count(value_type T);

พารามิเตอร์

ฟังก์ชันนี้ยอมรับพารามิเตอร์ของประเภทค่าของ multiset หนึ่งตัว ซึ่งเราต้องค้นหาใน multiset container ที่เกี่ยวข้อง

คืนค่า

ฟังก์ชันนี้จะคืนค่าตัวเลขที่มีคีย์เดียวกัน

ตัวอย่าง

Input: std::multiset<int> mymultiset = {1, 2, 2, 3, 2, 4};
   mymultiset.count(2);
Output: 3

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main() {
   int arr[] = {1, 2, 3, 1, 1, 1};
   multiset<int> check(arr, arr + 6);
   cout<<"List is : ";
   for (auto i = check.begin(); i != check.end(); i++)
      cout << *i << " ";
   cout << "\n1 is occuring: "<<check.count(1)<<" times";
   return 0;
}

ผลลัพธ์

หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -

List is : 1 1 1 1 2 3
1 is occuring 4 times

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main() {
   int arr[] = {1, 2, 3, 1, 1, 1, 2, 2};
   multiset<int> check(arr, arr + 8);
   cout<<"List is : ";
   for (auto i = check.begin(); i != check.end(); i++)
   cout << *i << " ";
   cout << "\n1 is occuring: "<<check.count(1)<<" times";
   cout << "\n2 is occuring: "<<check.count(2)<<" times";
   return 0;
}

ผลลัพธ์

หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -

List is : 1 1 1 1 2 2 2 3
1 is occuring 4 times
2 is occuring 3 times