最小プライオリティキューが必要な場合は、Compare
クラスをstd:greater
と宣言します。どのようなものですかreturn obj1 > obj2
プライオリティキューのクラス比較
どのように優先度キューがそれを使用するのですか?挿入時にそれを適用しますか? pop()
の後に "heapify"に使用してください。
私たちは挿入時に知っている、新しい要素はできるだけ浮かんでいました。だから、挿入が大きい場合は、obj1
は親でしょうか? obj2
は新しい要素そのものになりますか?
sift_up、push_heap:下記のリンク http://llvm.org/svn/llvm-project/libcxx/trunk/include/algorithm
キーワードです。 –
標準でソートの仕組みが指定されているかどうかはわかりませんが(私はそれが暗示されていると思われますが、それは暗示しているかもしれませんが)、いくつかの複雑さを指定しています。 ['std :: priority_queue :: push'](http://en.cppreference.com/w/cpp/container/priority_queue/push)、 [' std :: priority_queue :: emplace'](http:// en.cppreference.com/w/cpp/container/priority_queue/emplace)と['std :: priority_queue :: pop'](http://en.cppreference.com/w/cpp/container/priority_queue/pop)は次のとおりです。対数的な比較数に加えて、最下位にあるコンテナのマッチング操作の複雑さを加えたものです。 –