zoukankan      html  css  js  c++  java
  • c++ 适配器

    #include <bits/stdc++.h>
    using namespace std;
    const int MAX = 1e5+10;
    vector<int> filter(const vector<int> &vec,int val,less<int> &lt) {
        vector<int> nvec;
        vector<int> :: const_iterator iter=vec.begin();
        while((iter=find_if(iter,vec.end(),bind2nd(less<int>(),val)))!=vec.end()) {
            nvec.push_back(*iter);
            iter++;
        }
        return nvec;
    }
    template<typename InputIterator ,typename OutputIterator,typename ElemType,typename Comp>
    OutputIterator filter(InputIterator first,InputIterator last,OutputIterator at,const ElemType val,Comp pre) {
        while((first=find_if(first,last,bind2nd(pre,val)))!=last) {
            cout<<*first<<endl;
            *at++=*first++;
        }
        return at;
    }
    template<typename InputIterator,typename OutputIterator,typename ElemType>
    OutputIterator sub_vec(InputIterator first,InputIterator last,ElemType val,OutputIterator at) {
        InputIterator first1=first,last1=last;
        for(;first!=last;first++) {
            *at++=*first++;
        }
        sort(first1,last1);
        first=find_if(first1,last1,bind2nd(less<int>(),val));
        at->erase(first,last1);
        return at;
    }
    priority_queue <int,vector<int>,greater<int> > q;

    int main() {
        const int elem_size=5;
        int ia[elem_size]={1,3,4,56,7};
        vector<int> res(ia,ia+elem_size);
        vector<int> ans;
        filter(res.begin(),res.end(),back_inserter(ans),20,greater<int>());
        for(int i=0;i<ans.size();i++) {
            printf("%d ",ans[i]);
        }
    }
  • 相关阅读:
    使用集合组织相关数据
    深入类的方法
    深入C#数据类型
    上机练习1 更新会员积分
    魔兽争霸登录
    jQuery
    打卡系统
    [工具]kalilinux2016.2 更新后
    [技术分享]借用UAC完成的提权思路分享
    [技术分享]利用MSBuild制作msf免杀的后门
  • 原文地址:https://www.cnblogs.com/acvc/p/4620638.html
Copyright © 2011-2022 走看看