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

hàm map find () trong C ++ STL

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 ::find () 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ó.

Bản đồ ::find () là gì?

Bản đồ ::find () là một hàm nằm trong tệp tiêu đề . Hàm này trả về một trình vòng lặp trỏ đến một phần tử của một khóa nhất định mà chúng ta muốn tìm kiếm.

Cú pháp

map_name.find(key_value k);

Tham số

Hàm này chấp nhận những điều sau

Tham số

k: Đây là giá trị chính mà chúng tôi muốn tìm kiếm từ vùng chứa bản đồ

Giá trị trả về

Nó trả về một trình lặp trỏ đến phần tử được liên kết với khóa k.

Ví dụ

Đầu vào

map<char, int> newmap;
newmap[‘a’]
= 1;
newmap[‘b’] = 2;
newmap.find(b);

Đầu ra

2

Ví dụ

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_Map;
   TP_Map.insert({3, 50});
   TP_Map.insert({2, 30});
   TP_Map.insert({1, 10});
   TP_Map.insert({4, 70});
   cout<<"TP Map is : \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   //to find the map values at position
   auto var = TP_Map.find(1);
   cout<<"Found element at position "<<var->first<<" is : "<<var->second;
   auto var_1 = TP_Map.find(2);
   cout<<"\nFound element at position "<<var_1->first<<" is : "<<var_1->second;
   return 0;
}

Đầu ra

TP Map is:
MAP_KEY    MAP_ELEMENT
1             10
2             30
3             50
4             70
Found element at position 1 is : 10
Found element at position 2 is : 30

Ví dụ

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_Map;
   TP_Map.insert({3, 50});
   TP_Map.insert({2, 30});
   TP_Map.insert({1, 10});
   TP_Map.insert({4, 70});
   cout<<"TP Map is : \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.find(2); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   return 0;
}

Đầu ra

TP Map is:
MAP_KEY    MAP_ELEMENT
2             30
3             50
4             70