
对顶堆
逐梦起航-带梦飞翔
为了更加长远的快乐!
展开
-
poj3784 Running Median(对顶堆)
题意动态维护中位数问题:依次读入一个整数序列,每当已经读入的整数个数为奇数时,输出已读入的整数构成的序列的中位数。我的想法中位数是第(n+1)/2大的数,也可以看成是排完序后中间位置的数。再确定了一个中位数后,每加入一个新数,就用一个二分插入排序将其放入中位数左或右,这样会涉及到链表上的二分查找,我不会。其实可以用vector容器代替链表的,可以一试。题解对顶堆聪明的解题人,在中位数这里把序列折成...原创 2018-07-11 12:51:02 · 344 阅读 · 0 评论 -
hdu4699 Editor(对顶堆)
题意5种操作:I x 光标前插入x这个数D 删除光标前的数L 光标左移一位 若已到最左边移不动,就不移R 光标右移一位 若移不动,就不移了Q k 输出光标前的序列 从1到k中最大连续序列和 我的想法假设这题不存在光标左移、右移,只有I、D、Q三种操作。对于I、D很容易想到用一个栈来维护已有的数字。对于Q我们当然需要求一下前缀和,另外还需要额外开一个与这个栈同步的栈,...原创 2018-08-03 21:28:37 · 299 阅读 · 0 评论