C++構造体多要素sortソート呼び出し時の書き方
1248 ワード
// ,
// ,
struct node
{
int u, v, w;
}a[10000]; // 3
// w
//1. C++ , :
struct node
{
int u, v, w;
bool operator <(const node &x)const
{
return w<x.w; //
}
};
// : w , v ( )
struct node
{
int u, v, w;
bool operator < (const node &x)const
{
if(w==x.w)
return v<x.v;
//return x.v<v; // v
else
return w<x.w;
}
};
// ,
<algorithm> :sort(a, a+n);
//2.
// sort ( )
// :sort(a, a+n, cmp);
struct node
{
int u, v, w;
};
bool cmp(node a, node b)
{
if(a.w < b.w ) // w : !
return true;
else
return false;
}
//
bool cmp(node a, node b)
{
return a.w<b.w; //
}
// cmp , , ,
// w , w , v
bool cmp(node a, node b)
{
if(a.w==b.w)
return a.v<b.v;
else
return a.w<b.w;
}
//
bool cmp(node a, node b)
{
if(a.w<b.w)
return true;
if(a.w==b.w && a.v<b.v )
return true;
return false;
}