作者:
oin1104 (是oin的說)
2024-08-13 00:02:51題目:
做一個會回傳第k個最大的數字的東西
思路:
priority queue 小的是top的順序
放K個東西
這樣top就會是第K個最大的東西了
然後
queue的前面是front
priority queue 的前面是top
明明名字很像可是不一樣
我知道是因為pq背後原理是樹
可是還是會搞錯 很靠北
```cpp
class KthLargest {
public:
priority_queue<int,vector<int> ,greater<int>> save;
KthLargest(int k, vector<int>& nums)
{
save.push(-999999);
for(int k : nums)
{
save.push(k);
}
while(save.size() > k)
{
save.pop();
}
}
int add(int val)
{
save.push(val);
save.pop();
return save.top();
}
};
/**
* Your KthLargest object will be instantiated and called as such:
* KthLargest* obj = new KthLargest(k, nums);
* int param_1 = obj->add(val);
*/
```