zoukankan      html  css  js  c++  java
  • sort

    Sort
    Sort顾名思义就是排序
    用法:
    单关键字:
    对于vector a来说
    Sort(&a[0], &a[N]); //N=a.size()将a中元素递增排序。
    多关键字:
    我们也可以利用类pair
    vector< pair<int,int> > a; // 注意这里两个> >中间必须有一个空格,否则编译器会当是运算符>>
    例如:
    int N,x,y;
    cin >> N;
    for(int i=0;i<N;++i) {
     cin >> x >> y;
     a.push_back(make_pair(x,y)); // make_pair用于创建pair对象
    }
    sort(&a[0], &a[N]);
    注意:
    对于我们自己定义的类或结构,系统一般不能替我做比较运算,需要我们自己定义相应的运算符<
    bool operator<(const MyType &x, const MyType &y)
    {
     // Return true if x<y, false if x>=y
    }

    #include <string>
    #include <list>
    #include <stdlib.h>
    #include <iostream>
    using namespace std;
    //自定义对象User ,给List<User> 集合按年龄大小排序。 
    struct User  
    {  
    public:
    	User(int age, string name)  
    	{  
    		Age = age;  
    		Name = name;  
    	}  
    	int Age;
    	string Name;
    };
    
    class Compare
    {
    public:
    	bool operator()(User x, User y)
    	{   
    		return y.Age < x.Age;  
    	}  
    };
    
    void main()
    {
    	list<User> com;
    	com.push_back(User(14,"aa"));
    	com.push_back(User(17,"bb"));
    	com.push_back(User(12,"cc"));
    	com.push_back(User(33,"dd"));
    	com.sort(Compare());
    	list<User>::iterator itr = com.begin();
    	for (itr;itr!=com.end();++itr)
    	{
    		cout<<itr->Name<<","<<itr->Age<<endl;
    	}
    	system("pause");
    }


     

  • 相关阅读:
    详解softmax函数以及相关求导过程 (转载自知乎)
    每日算法
    每日算法
    每日算法
    每日算法
    每日算法
    广度优先搜索算法
    java实现fp-growth算法
    频繁项集挖掘之Aprior和FPGrowth算法
    频繁项集挖掘之apriori和fp-growth
  • 原文地址:https://www.cnblogs.com/byfei/p/14104486.html
Copyright © 2011-2022 走看看