• ベストアンサー

順位キューのコンテナにvectorを使える理由

C++のSTLについてです。 vectorにはfrontやpop_frontがないのにどうして順位キューのコンテナとして使えるのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.4

ん, #3 でも言われているように「キュー」と「順位キュー」をきちんと区別すること. あと, そのページの最後の行は, おそらく「キューについて書いてあるページをコピペしたときに修正し忘れているだけ」だと思われる... あれ? vector に pop_front はないけど front はあるよねぇ....

その他の回答 (3)

回答No.3

> そもそもキューってのは入れたほうと出すほうが別にないとだめかとおもったんですが・・・。 prioeity_queue は"いわゆるキュー"ではありません。

回答No.2

priority_queue はheapアルゴリズムで実装しているからです。

参考URL:
http://codezine.jp/article/detail/3864
  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

逆に質問です. 順位キューを実装するときに, どうして front や pop_front が必要だと思ったのですか?

ainobakuda
質問者

補足

http://ufcpp.net/study/stl/priority_queue.html このページに 他にも、push_back, pop_front, front, back, sizeなどのメソッドを適当に定義したクラスなら 何でもキューの実装に使えます。 ってあったのと、 そもそもキューってのは入れたほうと出すほうが別にないとだめかとおもったんですが・・・。

関連するQ&A