C ++プライオリティキューPRIORITY_QUEUE

通常、逃げるために直接に定義されたとき:

PRIORITY_QUEUE < 整数 > Q;

デフォルトの大きな根ヒープ。

時間の前に、非常に小さな根野菜は、ヒープを書くまだ診察室の内側に行くために愚かの大きな根ヒープを投げつけ行わマイナス記号を追加する方法がわからないです。

それのその完全な形では、実際には、このように長いです。

 

//小根堆 
PRIORITY_QUEUE < int型、ベクトル< int型 >、大きい< int型 >> Q;
//大根堆 
PRIORITY_QUEUE < int型、ベクトル< int型 >、あまり< 整数 >> Q;

 

 

その後、いくつかの特別の事情があります。

一対の際にプレスまず、第2の自動選別。

PRIORITY_QUEUE <ペア< int型int型 >> Q;

 

カスタムの並べ替えをしたい場合は、$のCMP $を書くことができます。

構造体ノード{
     int型、B。
} NUM [N]。
構造体CMP 
{ 
    ブール 演算子()(CONSTの INT&P、CONSTの INTQ)
    { 
        場合(NUM [P] .B <NUM [Q] .B)リターン 1 それ以外 の戻り 0 ; 
    } 
}。
PRIORITY_QUEUE < int型、ベクトル< int型 >、CMP> Q;

 

つづく...

 

おすすめ

転載: www.cnblogs.com/lyttt/p/11774367.html