思路:用三个函数实现可取最大值的单调队列。push元素时将队列中比该元素大的都移除,保证队列单调递减;pop元素时,只有当该元素与最大元素(队头)相等时,该元素存在队列中,移除该元素。最大元素始终在队头。
思路:使用unordered_map存放数据出现的频率;遍历map,使用小顶堆维护两个出现频率最高的值和频率;最后按降序存放输出数据。
注意:小顶堆的定义;最后清空小顶堆数据。
思路:用三个函数实现可取最大值的单调队列。push元素时将队列中比该元素大的都移除,保证队列单调递减;pop元素时,只有当该元素与最大元素(队头)相等时,该元素存在队列中,移除该元素。最大元素始终在队头。
思路:使用unordered_map存放数据出现的频率;遍历map,使用小顶堆维护两个出现频率最高的值和频率;最后按降序存放输出数据。
注意:小顶堆的定义;最后清空小顶堆数据。