Chuyển tới nội dung chính

std::set::count

#include <set>

size_type count(const key_type& key) const;

Đếm số lượng phần tử có giá trị bằng với giá trị cho trước trong std::set. Tuy nhiên, vì std::set chỉ lưu trữ các phần tử duy nhất, hàm count() sẽ chỉ trả về 0 (nếu không tìm thấy) hoặc 1 (nếu tìm thấy).

Tham số

key

  • Giá trị của phần tử cần đếm.

Giá trị trả về

  • Trả về số lượng phần tử có giá trị bằng key. Trong std::set, giá trị này sẽ luôn là 0 hoặc 1 vì các phần tử trong set là duy nhất.

Đặc điểm

  1. Kiểm tra sự tồn tại: count() thường được sử dụng để kiểm tra xem một phần tử có tồn tại trong std::set hay không, thay vì thực sự đếm số lần xuất hiện.
  2. const: count() là một hàm const, nghĩa là nó không thay đổi trạng thái của std::set.
  3. Phân biệt với find(): find() trả về iterator trỏ đến phần tử tìm thấy (hoặc end() nếu không tìm thấy), trong khi count() chỉ trả về số lượng phần tử có giá trị bằng key (0 hoặc 1).
  4. Không ném ngoại lệ: Hàm count() được quy định không ném ra ngoại lệ.
  5. Chỉ trả về 0 hoặc 1: Do std::set đảm bảo tính duy nhất của các phần tử, count() luôn trả về 0 hoặc 1.
  6. Độ phức tạp: Độ phức tạp của count()O(log n), với n là số phần tử trong std::set.

Ví dụ

#include <iostream>
#include <set>

int main() {
std::set<int> myset = {10, 20, 30, 40, 50};

// Kiểm tra xem set có chứa phần tử có giá trị 30 hay không
if (myset.count(30)) {
std::cout << "Element 30 exists in the set\n"; // Output: Element 30 exists in the set
} else {
std::cout << "Element 30 does not exist in the set\n";
}

// Kiểm tra xem set có chứa phần tử có giá trị 60 hay không
if (myset.count(60)) {
std::cout << "Element 60 exists in the set\n";
} else {
std::cout << "Element 60 does not exist in the set\n"; // Output: Element 60 does not exist in the set
}

return 0;
}

Các hàm liên quan

findTìm kiếm một phần tử có giá trị bằng với giá trị cho trước trong std::set
sizeTrả về số lượng phần tử hiện có trong std::set
equal_rangeTrả về một cặp iterator xác định phạm vi các phần tử có giá trị bằng giá trị key cho trước