您的位置:首页 > 编程语言 > C语言/C++

C++中max_element和min_element

2015-08-04 23:32 387 查看
函数原型:

#include <algorithm>
iterator max_element( iterator start, iterator end );
iterator max_element( iterator start, iterator end, BinPred p );用法:

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n[]={1,4,22,3,8,5};
int len=sizeof(n)/sizeof(int);
cout<<*max_element(n,n+len)<<endl;
cout<<*min_element(n,n+len)<<endl;
return 0;
}

注意:数组中参数和返回值是对应的地址,如果在容器中,则是迭代器。例如:
string longestPalindrome(string s) {
if (s.size() < 2) return s;
std::map<int, int> mpal;//<len,start>
for (int i = 0; i<s.size();)
{
int start = i;
while (s[start] == s[i + 1]) ++i;
int finish = i;
while (start >= 0 && finish < s.size() && s[start] == s[finish])
{
--start;
++finish;
}
if (finish - start >= 3) mpal.insert(std::make_pair(finish - start - 1, start + 1));
++i;
}
auto m = std::max_element(mpal.begin(), mpal.end()); //m是迭代器
return s.substr((*m).second, (*m).first);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: