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

set::count() ใน C++ STL


ในบทความนี้เราจะอธิบาย set::count() ใน C++ STL รวมถึงไวยากรณ์ การทำงาน และค่าที่ส่งคืน

Set ใน C++ STL คืออะไร?

Set ใน C++ STL เป็นคอนเทนเนอร์ที่เก็บ องค์ประกอบที่ไม่ซ้ำกัน (unique) ในลำดับที่จัดเรียงแล้ว ค่าขององค์ประกอบระบุตัวตนของมันเอง เมื่อเพิ่มค่าใน set แล้วไม่สามารถแก้ไขได้ แต่ยังสามารถลบหรือเพิ่มค่าใหม่ได้ Set ถูกนำไปใช้งานเป็น binary search tree

set::count() คืออะไร?

count() เป็นฟังก์ชันในตัวของ C++ STL ที่ประกาศใน header file <set> ฟังก์ชันนี้ใช้สำหรับ นับจำนวนครั้งที่อาร์กิวเมนต์ปรากฏใน set เนื่องจาก set เก็บเฉพาะค่าที่ไม่ซ้ำกัน ฟังก์ชันนี้จึงส่งคืนได้แค่ 0 หรือ 1 เท่านั้น (0 = ไม่มีค่านั้น, 1 = มีค่านั้น)

ไวยากรณ์ (Syntax)

name_of_set.count(const type_t& value);

พารามิเตอร์ (Parameters)

รับพารามิเตอร์หนึ่งคือค่าที่ต้องการค้นหาและนับใน set container

ค่าที่ส่งคืน (Return Value)

ส่งคืนได้เพียง 0 (ไม่มีใน container) หรือ 1 (มีใน container)

ตัวอย่างการใช้งาน

Input: set<int> myset = {1, 2, 3, 4, 6};
myset.count(2);
Output: 1

Input: set<int> myset = {1, 2, 3, 4, 6};
myset.count(5);
Output: 0

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

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

int main() {
    int arr[] = {2, 4, 2, 5, 6, 7};
    set<int> ch(arr, arr + 6); // สร้าง set จาก array (ค่าซ้ำจะถูกลบ)
    
    // ตรวจสอบว่า 2 อยู่ใน set หรือไม่
    if (ch.count(2))
        cout << "2 is present\n";
    else
        cout << "2 is not present\n";
    
    // ตรวจสอบว่า 9 อยู่ใน set หรือไม่
    if (ch.count(9))
        cout << "9 is present\n";
    else
        cout << "9 is not present\n";
    
    return 0;
}

ผลลัพธ์ (Output)

2 is present
9 is not present