首页 > 编程语言 > 详细

算法准备之c++ sort使用事例

时间:2019-03-11 17:49:09      阅读:149      评论:0      收藏:0      [点我收藏+]
#define _CRT_SBCURE_NO_DEPRECATE
#include <set>
#include <cmath>
#include <queue>
#include <stack>
#include <vector>
#include <string>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <functional>

using namespace std;

struct data{
    int a;
    int b;
    int val;
};
bool comp(data a,data b){
    return a.a*a.b>b.a*b.b;
}
void outdata(data &d){
    cout<<d.a<<\t<<d.b<<\t<<d.val<<endl;
}
const int maxn = 110;
const int INF = 0x3f3f3f3f;
int main(){
    int a[20]={2,4,1,23,5,76,0,43,24,65},i;
    for(i=0;i<20;i++)
        cout<<a[i]<<\t;
    cout<<endl;
    sort(a,a+20);
    for(i=0;i<20;i++)
        cout<<a[i]<<\t;
    cout<<endl;
    data datas[10];
    for(i=0;i<10;i++){
        datas[i].a=rand();
        datas[i].b=rand();
        datas[i].val=datas[i].a*datas[i].b;
        outdata(datas[i]);
    }
    cout<<endl;
    sort(datas,datas+10,comp);
    for(i=0;i<10;i++){
        outdata(datas[i]);
    }
    cout<<endl;
    return 0;
}

 遇到算法需要按自己定义的数据排序的时候调用的函数,差不多是这样,如果遇到stl使用方法也一样。只是参数1和2变成迭代器而已。

技术分享图片

 

算法准备之c++ sort使用事例

原文:https://www.cnblogs.com/zhengyuqian/p/10511894.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!