57. 数据流中第 K 大的元素

leetcode 703 | |

温馨提示:您没有权限查看当前视频。 立即购买观看视频

问题

这个题目说的是,你要实现一个类,用来求数据流中第 K 大的元素。你需要实现这个类中的两个函数。第一个是构造函数,它接收一个整数数组以及一个整数 K,整数数组作为初始数据流。第二个是 add 函数,接收一个整数表示新流入的数据,然后返回当前第 K 大的元素。

比如说,给你的 K 是 3,初始的数组是:

1, 5, 2, 8

这时假如调用 add 函数增加一个数字 9,数据流变成:

1, 5, 2, 8, 9

你要返回第 3 大的元素是 5。

假如再调用 add 函数增加一个数字 0,数据流变成:

1, 5, 2, 8, 9, 0

这时你要返回的第 3 大元素仍然是 5。

关于 AlgoCasts

AlgoCasts 旨在用心做好每一个算法讲解视频。每个视频包含两个部分:题目的剖析讲解以及编码,力求在讲解清楚到位的基础上,尽可能地保持视频精简短小,让大家可以在碎片时间里进行学习,并收获这些算法题背后的思想与乐趣。