代码随想录算法训练营第十三天|239. 滑动窗口最大值 347. 前 K 个高频元素

239. 滑动窗口最大值

思路:用三个函数实现可取最大值的单调队列。push元素时将队列中比该元素大的都移除,保证队列单调递减;pop元素时,只有当该元素与最大元素(队头)相等时,该元素存在队列中,移除该元素。最大元素始终在队头。代码随想录算法训练营第十三天|239. 滑动窗口最大值 347. 前 K 个高频元素_第1张图片

347. 前 K 个高频元素

思路:使用unordered_map存放数据出现的频率;遍历map,使用小顶堆维护两个出现频率最高的值和频率;最后按降序存放输出数据。

注意:小顶堆的定义;最后清空小顶堆数据。

代码随想录算法训练营第十三天|239. 滑动窗口最大值 347. 前 K 个高频元素_第2张图片

你可能感兴趣的:(数据结构,c++,算法)