Skip to content

Latest commit

 

History

History
3 lines (2 loc) · 415 Bytes

STL中的优先级队列是如何实现的?.md

File metadata and controls

3 lines (2 loc) · 415 Bytes

在 C++ STL 中,std::priority_queue 默认情况下使用 std::vector 作为其底层容器,并且使用 std::make_heapstd::push_heapstd::pop_heap 算法来维护堆的性质。

std::priority_queue 允许用户指定一个比较函数对象,这个比较对象定义了元素的优先级。默认情况下,它使用 std::less<T>,这意味着队列使用最大堆,最大的元素总