关闭

C++ algorithm partition

标签: C++算法
760人阅读 评论(0) 收藏 举报
分类:
#include <vector>
#include <string>
#include <algorithm>
#include <iterator>
#include <iostream>

// g++ 4.9.2 -std=c++11
// function that take a string and return true
// indicating the string has five characters 
// or more
bool pred(const std::string &s)
{
        return !(s.size() < 5);
}

int main()
{
        std::vector<std::string> words;
        std::string str;
        while (std::cin >> str) {
                words.push_back(str);
        }
        std::copy(words.begin(), words.end(), std::ostream_iterator<std::string>(std::cout, " "));
        std::cout << "\n";

        auto it = std::partition(words.begin(), words.end(), pred);
        std::copy(words.begin(), it, std::ostream_iterator<std::string>(std::cout, " "));
        std::cout << "\n";

        return 0;
}

from C++ primer 5th Exercise 10.13(P.387)

0
0
查看评论

C++序列操作之std::partition

C++序列操作之std::partitionstd::partition会将区间[first,last)中的元素重新排列,满足判断条件pred的元素会被放在区间的前段,不满足pred的元素会被放在区间的后段。该算法不能保证元素的初始相对位置,如果需要保证初始相对位置,应该使用stable_parti...
  • u014023993
  • u014023993
  • 2015-08-14 10:34
  • 2630

C++ partition

template ForwardIterator partition(ForwardIterator first,ForwardIterator last, UnaryPredicate pred){ auto ...
  • starcuan
  • starcuan
  • 2014-02-03 21:41
  • 1737

C++学习【原创】stable_partition函数的应用

上篇博文讲的partiton函数的不稳定性,所以STL中就有了一个稳定的整理算法:stable_partiton。函数参数:stable_partiton(first,last,compare);//first为容器的首迭代器,last为容器的末迭代器,compare为比较函数(可略写)。 如...
  • qq_32512643
  • qq_32512643
  • 2016-11-24 16:50
  • 432

快速排序(快排)算法的C++两种实现

快排算法在分治的时候有两种实现,一种实现是从两边到中间(partition),另一种实现是从一边到另一边(partition2)。我用一个100000数组测试发现前一种实现运行速度快一些。 这两种的C++实现如下: (注:我用的代码风格是gnu的代码风格) bool sort::qsort(...
  • loveaborn
  • loveaborn
  • 2013-03-30 19:29
  • 5724

windows7 安装向导

开篇我们附上最符合本吧主题的Windows 7微软原版无修改的系统镜像下载地址: Windows 764位旗舰版 ed2k://|file|cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408.iso|3420557312|B58548681854236...
  • qishuo_java
  • qishuo_java
  • 2014-10-24 23:09
  • 1060

algorithm库介绍之---- partition()方法和 stable_partition()方法

本文章转载自:ffhajbq特别感谢原作者。 ============================================================================== 这两个方法都用来将指定容器的元素根据指定的predicate函数分成两个子序列,其中...
  • godenlove007
  • godenlove007
  • 2012-09-15 15:37
  • 925

C++ 头文件algorithm 1——partition

函数 功能 partition 将元素划分为两个集合 is_partitioned 测试集合是否被划分 stable_partition 将元素划分为两个集合,保持元素的相对顺序 partition_copy 将元素划分为两个集合 partition_point...
  • skye1221
  • skye1221
  • 2017-10-08 10:51
  • 67

Oracle 系统包

Oracle 系统包
  • bbliutao
  • bbliutao
  • 2013-08-28 17:37
  • 4990

android recovery模式及ROM制作

转载时请注明出处和作者 文章出处:http://www.cnblogs.com/xl19862005 作者:Xandy 1       总述 为了方便客户日后的固件升级,本周研究了一下android的recovery模式。网...
  • xl19862005
  • xl19862005
  • 2013-01-18 16:55
  • 2756
    个人资料
    • 访问:27529次
    • 积分:547
    • 等级:
    • 排名:千里之外
    • 原创:23篇
    • 转载:24篇
    • 译文:0篇
    • 评论:0条
    文章分类