麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > STL教程(十二):C++ STL常用查找算法

STL教程(十二):C++ STL常用查找算法

來源:千鋒教育
發布人:syq
時間: 2022-06-22 17:30:54 1655890254

  1、常用查找算法匯總

1

  2、常用查找算法詳解

  2.1find算法

/*

find算法 查找元素

@param beg 容器開始迭代器

@param end 容器結束迭代器

@param value 查找的元素

@return 返回查找元素的位置

*/find(iterator beg, iterator end, value)

  案例:

int main() { 

vector<int> v1; 

v1.push_back(10); 

v1.push_back(50); 

v1.push_back(30); 

v1.push_back(40); 

v1.push_back(20); 

 

vector<int>::iterator ret; 

ret = find(v1.begin(), v1.end(), 50); 

if(ret != v1.end()) 

cout<<"尋找到結果為:"<<*ret<<endl; 

} }

2.1

  2.2find_if算法

/*

find_if算法 條件查找

@param beg 容器開始迭代器

@param end 容器結束迭代器

@param  callback 回調函數或者謂詞(返回bool類型的函數對象)

@return bool 查找返回true 否則false

*/find_if(iterator beg, iterator end, _callback);

  案例:

bool geaterThan30(int val){ 

return val>30; } class GreaterThan30 { 

public: 

bool operator()(int val) 

return val>30; 

} }; 

int main() { 

vector<int> v1; 

v1.push_back(10); 

v1.push_back(50); 

v1.push_back(30); 

v1.push_back(40); 

v1.push_back(20); 

 

vector<int>::iterator ret; 

//尋找大于30的數

//ret = find_if(v1.begin(), v1.end(), bind2nd(greater<int>(), 30));

//ret = find_if(v1.begin(), v1.end(), geaterThan30);

ret = find_if(v1.begin(), v1.end(), GreaterThan30()); 

if(ret != v1.end()) 

cout<<"找到:"<<*ret<<endl; 

} }

2.2

  2.3adjacent_find算法

/*

adjacent_find算法 查找相鄰重復元素

@param beg 容器開始迭代器

@param end 容器結束迭代器

@param  _callback 回調函數或者謂詞(返回bool類型的函數對象)

@return 返回相鄰元素的第一個位置的迭代器

*/adjacent_find(iterator beg, iterator end, _callback);

  案例:

int main() { 

vector<int> v1; 

v1.push_back(10); 

v1.push_back(30); 

v1.push_back(30); 

v1.push_back(40); 

v1.push_back(20); 

v1.push_back(20); 

 

vector<int>::iterator ret; 

ret = adjacent_find(v1.begin(), v1.end()); 

if(ret != v1.end()) 

cout<<"找到:"<<*ret<<endl; 

} }

2.3

  2.4binary_search算法

/*

binary_search算法 二分查找法

注意: 在無序序列中不可用

@param beg 容器開始迭代器

@param end 容器結束迭代器

@param value 查找的元素

@return bool 查找返回true 否則false

*/bool binary_search(iterator beg, iterator end, value);

  2.5count算法

/*

count算法 統計元素出現次數

@param beg 容器開始迭代器

@param end 容器結束迭代器

@param  value回調函數或者謂詞(返回bool類型的函數對象)

@return int返回元素個數

*/count(iterator beg, iterator end, value);

  案例:

bool geaterThan30(int val){ 

return val>30; } class GreaterThan30 { 

public: 

bool operator()(int val) 

return val>30; 

} }; 

int main() { 

vector<int> v1; 

v1.push_back(10); 

v1.push_back(30); 

v1.push_back(30); 

v1.push_back(40); 

v1.push_back(20); 

v1.push_back(30); 

cout<<count(v1.begin(), v1.end(),30)<<endl; 

}

2.5

  2.6count_if算法

/*

count_if算法 統計元素出現次數

@param beg 容器開始迭代器

@param end 容器結束迭代器

@param  callback 回調函數或者謂詞(返回bool類型的函數對象)

@return int返回元素個數

*/count_if(iterator beg, iterator end, _callback);

  案例:

int main() { 

vector<int> v1; 

v1.push_back(10); 

v1.push_back(30); 

v1.push_back(30); 

v1.push_back(40); 

v1.push_back(20); 

v1.push_back(30); 

cout<<count_if(v1.begin(), v1.end(),bind2nd(greater<int>(),20))<<endl; 

}

 

2.6

  更多關于“智能物聯網培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學,課程大綱緊跟企業需求,更科學更嚴謹,每年培養泛IT人才近2萬人。不論你是零基礎還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
主站蜘蛛池模板: 男人j插入女人p| 篠田优被公侵犯电影| 国产成人综合在线视频| 日韩精品在线电影| 国产精品久久久久9999高清| 无需付费大片在线免费| 国产专区中文字幕| 国产又爽又黄又舒服又刺激视频 | va在线播放| 国产免费午夜| 男女一边做一边爽免费视频| 小小在线观看视频www软件| 亚洲黄色免费电影| 国产精品久久久| 精品久久久久久久久久中文字幕| 精品精品国产高清a毛片| 伊人久久精品亚洲午夜| 两根硕大一起挤进小h| 香港一级毛片免费看| 国产69精品久久久久妇女| 日韩午夜r电影在线观看| 再灬再灬再灬深一点舒服| a级成人毛片免费视频高清| 天堂男人网| 欧美高清hd| 天天躁夜夜躁狠狠躁2021| zoom和okzoom在线视频| 成人三级k8经典网| 草草影院ccyy国产日本欧美 | 精品福利一区二区三区免费视频| 美女被羞羞网站免费下载| 美女让我桶| 欧洲最强rapper潮水免费| 日本电影中文字幕| 精品国产一区二区三区免费 | 男女一边摸一边做爽视频| 日本三人交xxx69| 爽天天天天天天天| 国产99视频精品免视看7| 里番库全彩本子彩色h可知子| 亚洲国产日韩欧美一区二区三区 |