vector解决奇偶分类排序

在一本通题库数据排序这一节时

PPT中使用了负数手段来进行排序

但在此

我想到了一种更有趣的方法

——STL的vector

首先初始化两个vector

将奇数压入a类型vector

偶数压入b类型vector

之后用sort排序,

为了解决反序这一问题

我们使用了一个algorithm里的函数

reverse将序列反向放置

之后再使用迭代器分别访问两个不同的vector

#include<iostream>
#include<algorithm>
#include<vector>
using namespace std;
vector<int> a;
vector<int> b;
int main()
{
    int x;
    for(int i=1;i<=10;i++)
        {
            cin>>x;
            if(x%2==1) a.push_back(x);
            else b.push_back(x);  
        }
    sort(a.begin(),a.end());
    sort(b.begin(),b.end());
    reverse(a.begin() ,a.end() );
    for(vector<int>::iterator it=a.begin() ;it<a.end() ;it++)
        cout<<*it<<" ";
    for(vector<int>::iterator iter=b.begin() ;iter<b.end() ;iter++)
        cout<<*iter<<" ";
        
 }

 

posted @ 2020-02-14 21:08  ·Iris  阅读(321)  评论(0编辑  收藏  举报