boost的函数:partition_point
来源:互联网 发布:狼人杀online for mac 编辑:程序博客网 时间:2024/05/29 15:00
template <typename ForwardIterator, typename Predicate>ForwardIterator partition_point ( ForwardIterator first, ForwardIterator last, Predicate p ){ std::size_t dist = std::distance ( first, last ); while ( first != last ) { std::size_t d2 = dist / 2; ForwardIterator ret_val = first; std::advance (ret_val, d2); if (p (*ret_val)) { first = ++ret_val; dist -= d2 + 1; } else { last = ret_val; dist = d2; } } return first;}
简介:二分法检测一组序列(针对当前的判断条件是有序的)中第一个不满足条件要求的元素
示例:
bool lessThan10(int i){return i < 10;}
int myints_1[] = {0, 1, 3, 2, 14, 15, 1}; vector<int> c1(myints_1, myints_1 + sizeof(myints_1) / sizeof(int)); boost::algorithm::partition_point(c1, lessThan10); //14的迭代器
此函数功能的用途暂时无法清楚知道,可以与is_partitioned函数做对比。
0 0
- boost的函数:partition_point
- Boost 学习之算法篇 partition_point
- boost的函数:is_partitioned
- boost的函数:is_permutation
- 【Boost】基于boost::lexical_cast的to_string函数
- boost函数对象的妙用
- Boost asio的async_write函数
- Boost asio的async_write函数
- Boost asio的async_write函数
- 关于boost::function与boost::bind函数的使用心得
- 关于boost::function与boost::bind函数的使用心得
- Boost的转换函数(一)
- Boost的转换函数(二)
- Boost的转换函数(一)
- Boost的转换函数(二)
- Boost的转换函数polymorphic_cast和polymorphic_downcast
- Boost的转换函数numeric_cast和lexical_cast
- boost::filesystem::resize_file函数的源码分析
- Linux Kernel 设备驱动之I2C之client之发送消息格式
- 产品经理之一(产品需求的调研一)
- 基于机器学习的web异常检测
- Hello World
- # Android6.0 之Bluetooth Enable流程分析
- boost的函数:partition_point
- 防雪崩利器:熔断器 Hystrix 的原理与使用
- 2016年容器技术思考: Docker, Kubernetes, Mesos将走向何方?
- Listener监听器笔记
- Spark中的RDD
- Tungsten Replicator学习总结
- 滑动变色——js和jquery对比
- sql 内建函数积累-持续更新
- shiro结合springMVC配置相关