boost之算法
STL里的算法已经很好了,在boost里有几个小的算法
1.BOOST_FOREACH使用方法,定义一个容器里内部类型数据,容器作为参数传递。
#include <iostream>
#include <string>
#include <vector>
#include <boost/assign.hpp>
#include <boost/foreach.hpp>
using namespace std;
using namespace boost::assign; int main()
{ vector<int> v = list_of(1)(2)(3)(4)(5);
BOOST_FOREACH(int x,v)
{
cout << x << ",";
}
cout << endl;
string str("boost foreach");
BOOST_FOREACH(char c,str)
{
cout << c << "-";
}
cout << endl;
return 0;
}
2.minmax同时返回两个数最大值和最小值,返回类型为tuple,使用方法:
#include <iostream>
#include <string>
#include <vector>
#include <boost/assign.hpp>
#include <boost/typeof/typeof.hpp>
#include <boost/algorithm/minmax.hpp>
#include <boost/tuple/tuple.hpp>
using namespace std;
using namespace boost::assign; int main()
{ BOOST_AUTO(x,boost::minmax(100,200));
cout << x.get<1>() << " " << x.get<0>() <<endl;
return 0;
}
3.minmax_element()用于找出容器中的最大值和最小值。
#include <iostream>
#include <string>
#include <vector>
#include <boost/assign.hpp>
#include <boost/typeof/typeof.hpp>
#include <boost/algorithm/minmax_element.hpp>
#include <boost/tuple/tuple.hpp>
using namespace std;
using namespace boost::assign;
using namespace boost; int main()
{
vector<int> v = list_of(633)(90)(67)(83)(2);
BOOST_AUTO(x,boost::minmax_element(v.begin(),v.end()));
cout << "min: " << *x.first <<endl;
cout << "max: " << *x.second <<endl; return 0;
}
boost之算法的更多相关文章
- boost字符串算法
boost::algorithm简介 2007-12-08 16:59 boost::algorithm提供了很多字符串算法,包括: 大小写转换: 去除无效字符: 谓词: 查找: 删除/替换: 切割: ...
- 19.boost A*算法
#include <iostream> #include <string> #include <utility> #include <vector> # ...
- 使用 AdaBoost 元算法提高分类器性能
前言 有人认为 AdaBoost 是最好的监督学习的方式. 某种程度上因为它是元算法,也就是说它会是几种分类器的组合.这就好比对于一个问题能够咨询多个 "专家" 的意见了. 组合的 ...
- 第九篇:使用 AdaBoost 元算法提高分类器性能
前言 有人认为 AdaBoost 是最好的监督学习的方式. 某种程度上因为它是元算法,也就是说它会是几种分类器的组合.这就好比对于一个问题能够咨询多个 "专家" 的意见了. 组合的 ...
- kaggle 竞赛之套路
图片数据:卷积还是王道,有几个比较通用性的框架被人拿来改来改去 非图片特征数据:用分类: boost系列算法:牛逼的框架实现 xgboost AdaBoost算法针对不同的训练集训练同一个基本分类器( ...
- [转]C++学习–基础篇(书籍推荐及分享)
C++入门 语言技巧,性能优化 底层硬货 STL Boost 设计模式 算法篇 算起来,用C++已经有七八年时间,也有点可以分享的东西: 以下推荐的书籍大多有电子版.对于技术类书籍,电子版并不会带来一 ...
- 编译器的未来——我们还需要C++么?
在未来我们还需要纯C++开发模式么? 随着C++11的诞生,C++已经越来越臃肿,从03的时候就觉得C++实在是太复杂了.以一个合格C++程序员的标准来简单的来说3-5年略有小成,5-8年才可以说自己 ...
- solr 使用edismax来控制评分
如何控制评分 如果设置了sort字段,那么将会按照sort字段的顺序返回结果. 如果没有设置sort字段,那么将会根据相关度打分来排序.也就是说,相关度更高的排在前面. 如何来定制适合自身业务的排序打 ...
- C++ 著名程序库 概览
本文转载自: http://ace.acejoy.com/thread-3777-1-1.html 1.C++各大有名库的介绍--C++标准库 2.C++各大有名库的介绍--准标准库B ...
随机推荐
- unity, Invoke延迟执行
参考:http://blog.christianhenschel.com/2013/05/15/how-to-do-delayed-function-calls-in-unity3d-one-line ...
- C 调用 lua 函数
C 调用 lua 函数 需要考虑的问题: 1. 使用 lua_pcall 可以调用 lua 函数,首先把 lua 函数入栈,然后把参数入栈, lua_pcall(luaState, 参数个数, 返回值 ...
- Hibernate使用注意事项
映射的POJO类型中如果有基本类型最好都是用包装类来代替: 注意关联关系的正确设置,一对一(主键方式.外键外键方式),一对多和多对多的配置,单向.双向的配置: 更新核心配置文件的mapping:如果是 ...
- 40-语言入门-40-C小加之随机数
题目地址: http://acm.nyist.net/JudgeOnline/problem.php?pid=255 15 20 32 40 67 89 300 400 代码: #includ ...
- makefile变量定义应用到c语言
makefile是为组织程序工程的,其定义的宏怎样应用到c程序中呢? 我们知道Makefile中可定义变量或导出变量,make命令可定义变量:编译器(如gcc)可通过CFLAGS定义宏. 但如何才能使 ...
- 【转】Monkey测试6-Monkey Test Log
Moneky Test Log 分析: 首先用一个最简单的例子分析:monkey --pct-trackball 0 --throttle 100 -v 500/*p参数: 表示指定测试的程序/*v参 ...
- ThinkPHP与EasyUI整合之二(datagrid):删除多条记录
学习EasyUI已有一段时间了,现在开始逐步把平时学习的细节和难点记录下来. 1. datagrid选中多条记录的语句是: var rows = $('#dg').datagrid('getSelec ...
- 怎么获取Android应用程序的上下文
在一个应用里面,有很多activity,而这些activity之间经常要进行互相启动.往复跳转.还有就是通过Notification启动.当activity多了之后,如果设置他的模式为单例模式,或者不 ...
- php 佛祖保佑 永无bug
<pre name="code" class="java">/* _ooOoo_ o8888888o 88" . "88 (| ...
- 转载:DenseNet算法详解
原文连接:http://blog.csdn.net/u014380165/article/details/75142664 参考连接:http://blog.csdn.net/u012938704/a ...