Untuk mencari elemen dalam bekas C++ STL, anda boleh menggunakan kaedah berikut: fungsi find(): Cari elemen pertama yang sepadan dengan nilai yang ditentukan. find_if() function: Cari elemen pertama yang memenuhi syarat yang ditentukan. count() function: Mengembalikan bilangan elemen dalam bekas yang sama dengan nilai yang ditentukan.
Cara mencari elemen dalam bekas C++ STL
Dalam C++, STL (Perpustakaan Templat Standard) menyediakan satu set kelas kontena yang berkuasa untuk menyimpan dan mengurus data. Mencari elemen dalam bekas adalah salah satu tugas biasa, dan STL menyediakan beberapa cara untuk menyelesaikannya. Fungsi
find()
find()
digunakan untuk mencari elemen pertama yang sepadan dengan nilai yang ditentukan. Untuk semua bekas berjujukan (seperti vektor
dan list
) dan bekas bersekutu (seperti map
dan set
) cekap . Fungsi find()
函数用于查找第一个与指定值匹配的元素。对于所有序列式容器(例如 vector
和 list
)和关联式容器(例如 map
和 set
)都有效。
#include <vector> int main() { std::vector<int> v = {1, 3, 5, 7, 9}; // 查找元素 5 auto it = std::find(v.begin(), v.end(), 5); // 如果元素找到,it 将指向该元素 if (it != v.end()) { std::cout << "元素 5 找到" << std::endl; } else { std::cout << "元素 5 未找到" << std::endl; } return 0; }
find_if() 函数
find_if()
函数用于查找第一个满足指定条件的元素。它接受一个谓词(一个返回布尔值的函数)作为参数。
#include <vector> int main() { std::vector<int> v = {1, 3, 5, 7, 9}; // 查找第一个大于 5 的元素 auto it = std::find_if(v.begin(), v.end(), [](int x) { return x > 5; }); // 如果元素找到,it 将指向该元素 if (it != v.end()) { std::cout << "第一个大于 5 的元素为 " << *it << std::endl; } else { std::cout << "没有找到大于 5 的元素" << std::endl; } return 0; }
count() 函数
count()
#include <vector> int main() { std::vector<int> v = {1, 1, 3, 5, 1, 7, 9}; // 计算元素 1 出现的次数 int count = std::count(v.begin(), v.end(), 1); std::cout << "元素 1 出现的次数为 " << count << std::endl; return 0; }
find_if()
Fungsi digunakan untuk mencari elemen pertama yang memenuhi syarat yang ditetapkan. Ia menerima predikat (fungsi yang mengembalikan nilai boolean) sebagai hujah. Fungsi 🎜rrreee🎜🎜count() 🎜🎜🎜count()
Fungsi mengembalikan bilangan elemen dalam bekas yang sama dengan nilai yang ditentukan. 🎜rreeeeAtas ialah kandungan terperinci Bagaimana untuk mencari elemen dalam bekas C++ STL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!