传智扫地僧课程学习笔记。
void main44_adjacent_find()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(2);
v1.push_back(2);
v1.push_back(3);
v1.push_back(5);
vector<int>::iterator it = adjacent_find(v1.begin(), v1.end() );
if (it == v1.end())
{
cout << "没有找到 重复的元素" << endl;
}
else
{
cout << *it << endl;
}
int index = distance(v1.begin(), it);
cout << index << endl;
}
// 0 1 2 3 ......n-1
//二分法 1K = 1024 10次 速度快
void main45_binary_search()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(3);
v1.push_back(5);
v1.push_back(7);
v1.push_back(9);
bool b = binary_search(v1.begin(), v1.end(), 7);
if (b == true)
{
cout << "找到了" << endl;
}
else
{
cout << "没到了" << endl;
}
}
void main46_count()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(3);
v1.push_back(5);
v1.push_back(7);
v1.push_back(7);
v1.push_back(9);
v1.push_back(7);
int num = count(v1.begin(), v1.end(), 7);
cout << num << endl;
}
bool GreatThree(int iNum)
{
if (iNum > 3)
{
return true;
}
return false;
}
void main46_countif()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(3);
v1.push_back(5);
v1.push_back(7);
v1.push_back(7);
v1.push_back(9);
v1.push_back(7);
int num = count_if(v1.begin(), v1.end(), GreatThree);
cout << "num:" << num << endl;
}
void main47_find_findif()
{
vector<int> v1;
v1.push_back(1);
v1.push_back(3);
v1.push_back(5);
v1.push_back(7);
v1.push_back(7);
v1.push_back(9);
v1.push_back(7);
vector<int>::iterator it = find(v1.begin(), v1.end(), 5);
cout << "*it:" << *it << endl;
//第一个大于3的位置
vector<int>::iterator it2 = find_if(v1.begin(), v1.end(), GreatThree);
cout << "*it2:" << *it2 << endl;
}