Re: [闲聊] 每日leetcode

楼主: 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);
*/
```
作者: Smallsh (Smallsh)   2023-08-13 00:02:00
大师
作者: digua (地瓜)   2024-08-13 00:06:00
大师
作者: mrsonic (typeB)   2024-08-13 00:07:00
你有什么用
作者: JIWP (JIWP)   2024-08-13 00:08:00
你有什么用

Links booklink

Contact Us: admin [ a t ] ucptt.com