優先隊列感悟

優先隊列

相當於一個堆,可以按照想要的規律去排序。只要重寫<即可

最重要的幾段

priority_queue<P>//其中P是自己定義的結構體

bool operator<(P x,P y)//重寫規則

網上講優先隊列的很多,我這裏提供速成的辦法。只要記住這兩個,基本上就會用了。下面看樣例

運行結果:

很明顯,如果只規定x的大小規範,會隨機建堆,並不會像理想那樣順序輸出

可見,規律還是有的,只是講像數組排序sort那樣反過來寫就可以獲得想要的結果

反之,如果用小於,

 

很明顯就會反過來一個

因此,我們只需要記住:

類似sort,只要將operator裏面的大小於反過來寫,就可以進行結構體優先隊列啦

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章