清泉逐流

做着努力,等待幸福到来

使用sort对二维数组排序

作者:Eamonn 时间 : 2014-09-30 19:49 分类:C/C++

#include <iostream>
#include <algorithm>
using namespace std;
struct OP
{
    inline bool operator()( int* e1, int* e2)
    {
        if( e1[0] == e2[0] ){
            if( e1[1] = e2[1] ){
                return e1[2]<e2[2];
            }
            return e1[1]<e2[1];
        }
        return e1[0]<e2[0];
    }
}op;
int main(int argc, char **argv)
{
    int arr[3][3] = {1,2,3, 4,0,1, 2,3,1};
       
    // warning : use dynamic pointer to sort
    int *arr1[3];
    for (int i=0;i<3;i++){
        arr1[i]=arr[i];
    }
       
    sort(begin(arr1), end(arr1), op);
       
       
    for(int i=0; i<3; i++){
        for(int j=0; j<3; j++){
            cout << arr1[i][j] << " ";
        }
        cout << endl;
    }
       
    return 0;
}


转载注明: http://www.eamonning.com/note/view/41
» 笔记大类