题解 | #输入整型数组和排序标识,对其元素按照升序或降序进行排序#

输入整型数组和排序标识,对其元素按照升序或降序进行排序

http://www.nowcoder.com/practice/dd0c6b26c9e541f5b935047ff4156309

#include <bits/stdc++.h>
using namespace std;
//外部结构体
struct nums{
    int num;
};
//升序函数
bool compare1(nums a,nums b)
{
    return a.num<b.num;
}
//降序函数
bool compare0(nums a,nums b)
{
    return a.num>b.num;
}
//主函数编写
int main()
{
    //初始化数据
    int n,flag;
    while(cin>>n)
    {
        //创建数据容器
        vector<nums>ans;
        //遍历循环
        for(int i=0;i<n;i++)
        {
            nums temp;
            cin>>temp.num;
            ans.push_back(temp);
        }
        //初始化数据
        cin>>flag;
        //判断升序降序
        if(flag)
        {
            stable_sort(ans.begin(), ans.end(),compare0);
        }
        else
        {
            stable_sort(ans.begin(), ans.end(),compare1);
        }
      //遍历循环
        for(int i=0;i<n;i++)
        {
            cout<<ans[i].num<<' ';
        }
        cout<<endl;
    }
    return 0;
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务