Computer >> Máy Tính >  >> Lập trình >> C ++

hàm map count () trong C ++

Trong bài viết này, chúng ta sẽ thảo luận về cách làm việc, cú pháp và các ví dụ của hàm map ::blank () trong C ++ STL.

Bản đồ trong C ++ STL là gì?

Bản đồ là vùng chứa liên kết, tạo điều kiện để lưu trữ các phần tử được hình thành bởi sự kết hợp giữa giá trị khóa và giá trị được ánh xạ theo một thứ tự cụ thể. Trong vùng chứa bản đồ, dữ liệu luôn được sắp xếp bên trong với sự trợ giúp của các khóa liên quan. Các giá trị trong vùng chứa bản đồ được truy cập bằng các khóa duy nhất của nó.

map ::count () là gì?

Bản đồ ::count () là một hàm nằm trong tệp tiêu đề . Hàm này đếm các phần tử có khóa cụ thể, nó trả về 1 nếu phần tử có khóa có mặt, trả về giá trị 0 nếu phần tử có khóa không có trong vùng chứa.

Cú pháp

 map_name.count (key n); 

Tham số

Hàm này chấp nhận tham số N chỉ định Khóa trong vùng chứa.

Trả lại

Hàm này trả về Boolean Number 1 nếu khóa có trong vùng chứa và trả về 0 nếu khóa không có trong vùng chứa.

Đầu vào (khóa, Phần tử)

 (2,70), (3,30), (4,90), (5,100) 

Đầu ra

 hiện tại Khóa 5. Khóa 6 không có .,113,261,664,81 Khóa 2 hiện có. Khóa 8 không có. 

Có thể tuân theo phương pháp tiếp cận

  • Đầu tiên hãy khởi tạo vùng chứa.

  • Sau đó, chèn phần tử bằng các khóa của chúng.

  • Sau đó, chúng tôi kiểm tra khóa mong muốn có trong vùng chứa hay không.

Bằng cách sử dụng phương pháp trên, chúng ta có thể kiểm tra khóa có trong vùng chứa hay không, có một cách tiếp cận khác có thể được thực hiện như -

  • Đầu tiên, chúng tôi khởi tạo vùng chứa.

  • Sau đó, chúng tôi chèn phần tử bằng các khóa của chúng.

  • Sau đó, chúng tôi tạo vòng lặp từ phần tử đầu tiên đến phần tử cuối cùng.

  • Trong vòng lặp này, chúng tôi kiểm tra khóa mong muốn có hiện diện hay không.

Cách tiếp cận trên thường được sử dụng cho phần tử được lưu trữ theo thứ tự bảng chữ cái. Trong cách tiếp cận này, hãy in mã rằng phần tử có trong phần tử hay không có trong Đầu ra.

Ví dụ

 / / C ++ để chứng minh hoạt động của hàm map count () # incude  #include  Sử dụng không gian tên std; int main () {map  mp; mp.insert ({1, 40}); mp.insert ({3, 20}); mp.insert ({2, 30}); mp.insert ({5, 10}); mp.insert ({4, 50}); if (mp.count (1)) cout <<”Khoá 1 là hiện tại \ n”; else cout <<"Khoá 1 không có \ n"; if (mp.count (7)) cout <<“Khoá 7 là hiện tại \ n”; else cout <<“Khoá 7 không có mặt \ n”; trả về 0;} 

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau

 Khoá 1 hiện có Khoá 7 không có 

Ví dụ

 #include  #include  Sử dụng không gian tên std; int main () {map  mp; int I; mp [‘a’] =2; mp [‘c’] =3; mp [‘e’] =1; for (i =’a’; i <’f’; i ++) {cout < 0) cout <<“là một phần tử của mp. \ n”; else cout <<“không phải là một phần tử của mp. \ n”; } trả về 0;} 

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau

 a là một phần tử của mp.b không phải là một phần tử của mp.c là một phần tử của mp.d không phải là một phần tử của mp.e là một phần tử của mp.f không phải là một phần tử của mp.