【发布时间】:2016-01-01 00:08:59
【问题描述】:
我很困惑为什么 C++ 中的 priority_queue 使用 less 作为默认比较器并实现最大堆?不是按升序排列元素吗?
【问题讨论】:
标签: c++ heap priority-queue
我很困惑为什么 C++ 中的 priority_queue 使用 less 作为默认比较器并实现最大堆?不是按升序排列元素吗?
【问题讨论】:
标签: c++ heap priority-queue
为了一致性。 less 被用作许多算法和容器的默认比较器,我们人类不必尝试记住默认情况下哪个比较器使用哪个比较器,因为它们都是相同的。
【讨论】:
priority_queue 只是一个队列,不知道你想用它做什么。