成员函数
find()
没找到就返回一个和end()
一样的迭代器:
s.find(x) == s.end()
:表示没找到if (s.find(x) != s.end())
:表示找到了
1.set
set<char> set1{'(', '[', '{'};
auto p1 = set1.end();
auto p2 = set1.find(')');
auto p3 = set1.find('{');
printf("[%c,%c,%d]", *p1, *p2, (p1 == p3)); // [,,1]
printf("[%c,%c,%d]", *p1, *p3, (p1 == p3)); // [,{,0]
2.unordered_set
bool containsDuplicate(vector<int>& nums) {
unordered_set<int> s;
for (int x: nums) {
if (s.find(x) != s.end()) {
return true;
}
s.insert(x);
}
return false;
}
std::find()
std::find(v.begin(),v.end(),num_to_find)