// Generic findMax, with a function object, version #1
// Precondition, a.size() > 0
#include <iostream>
#include <vector>
#include <string.h>
using namespace std; template <class Object, class Comparator>
const Object& findMax(const vector<Object> &arr, Comparator cmp)
{
int maxIndex = ;
for(int i = ; i < arr.size(); i++) {
if(cmp.isLessThan(arr[maxIndex], arr[i]))
maxIndex = i;
}
return arr[maxIndex];
} #include <functional>
template <class Object>
const Object& findMax(const vector<Object> &arr)
{
return findMax(arr, less<Object>() );
} class CaseInsensitiveCompare {
public:
bool isLessThan(const string &lhs, const string &rhs) const
{return (stricmp(lhs.c_str(), rhs.c_str())< ); }
}; int main()
{
vector<string> arr();
arr[] = "ZEBRA"; arr[] = "alligator"; arr[] = "crocodile";
cout << findMax(arr, CaseInsensitiveCompare()) << endl;
//cout << findMax(arr) << endl;
return ;
}

【STL】-function object的更多相关文章

  1. 【最短路】【STL】CSU 1808 地铁 (2016湖南省第十二届大学生计算机程序设计竞赛)

    题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1808 题目大意: N个点M条无向边(N,M<=105),每条边属于某一条地铁Ci ...

  2. 【中途相遇法】【STL】BAPC2014 K Key to Knowledge (Codeforces GYM 100526)

    题目链接: http://codeforces.com/gym/100526 http://acm.hunnu.edu.cn/online/?action=problem&type=show& ...

  3. 【STL】【模拟】Codeforces 696A Lorenzo Von Matterhorn

    题目链接: http://codeforces.com/problemset/problem/696/A 题目大意: 一个满二叉树,深度无限,节点顺序编号,k的儿子是k+k和k+k+1,一开始树上的边 ...

  4. 蓝桥 ADV-233 算法提高 队列操作 【STL】

      算法提高 队列操作   时间限制:1.0s   内存限制:256.0MB      问题描述 队列操作题.根据输入的操作命令,操作队列(1)入队.(2)出队并输出.(3)计算队中元素个数并输出. ...

  5. 【废弃】【WIP】JavaScript Object

    创建: 2017/11/03 废弃: 2019/02/19 重构此篇.原文归入废弃  增加[废弃中]标签与总体任务 结束: 2019/03/03 完成废弃, 删除[废弃中]标签, 添加[废弃]标签 T ...

  6. CF987A Infinity Gauntlet【STL】

    [链接]:CF987A [分析]:运用map [代码]: #include <iostream> #include<queue> #include<string.h> ...

  7. 华农oj Problem B: Averyboy找密码【STL】

    Problem B: Averyboy找密码 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 83 Solved: 29 [Submit][Status] ...

  8. 【JS】307- 复习 Object.assign 原理及其实现

    点击上方"前端自习课"关注,学习起来~ }let b = {    name: "muyiy",    book: {        title: " ...

  9. 【优先队列】Function

    Function 题目描述 wls有n个二次函数Fi(x)=aix2+bix+ci(1≤i≤n).现在他想在且x为正整数的条件下求的最小值.请求出这个最小值. 输入 第一行两个正整数n,m.下面n行, ...

随机推荐

  1. linux简单配置

    lsof -i lsof -i:211.判断apache查找httpd路径: ps aux | grep httpd 结果:  /usr/local/apache/bin/httpd /usr/loc ...

  2. maven相关资料

    http://www.yiibai.com/maven/ Maven教程 https://www.zhihu.com/question/20104270 http://huangnx.com/tags ...

  3. Rest-Assured

    Rest-Assured完整的测试例子 http://blog.csdn.net/win7system/article/details/52468078 使用 Rest-assured 测试 Rest ...

  4. 使用ICMP协议Ping网络主机

    #coding:utf-8 #!/usr/bin/env python import os import argparse import socket import struct import sel ...

  5. js中Math.random()生成指定范围数值的随机数

    http://www.111cn.net/wy/js-ajax/57062.htm Math.random() 这个方法相信大家都知道,是用来生成随机数的.不过一般的参考手册时却没有说明如何用这个方法 ...

  6. 韩系高端PK:whoo后VS雪花秀(转载)

    产品广告代言人是李英爱(韩剧“大长今”的扮演者)产品设计也是贵妇风格.------------//就是大长今的女主角用过的牌子  LG旗下的WHOO后 WHOO后洁面霜:这是我非常喜欢的洁面霜,淡黄色 ...

  7. iOS 国际化多语言设置 xcode7

    iOS 国际化多语言设置 方式一: 1. 在storyboard中创建好UI,然后在 project 里面  Localizables 栏目里面,添加你需要的语言:默认是Englist; 比如这里我添 ...

  8. unity入门笔记

    我于2010年4月1日硕士毕业加入完美时空, 至今5年整.刚刚从一家公司的微端(就是端游技术+页游思想, 具体点就是c++开发, directX渲染, 资源采取所需才会下载)项目的前端主程职位离职, ...

  9. C#中操作txt,抛出“正由另一进程使用,因此该进程无法访问此文件”

    将你的File.Create(fileName); //创建fileName路径的文本改为 1 2 3 using (FileStream fs = File.Create(fileName)){} ...

  10. 重启Apache报错apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName ... waiting的解决方法

    启动apache提示 : apache2: Could not reliably determine the server's fully qualified domain name, using 1 ...