Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Vector<DataPoint> topK(istream& stream, int k) {
- HeapPQueue tempQ;
- for (DataPoint pt; stream >> pt; ) { //not sure if this actually iterates over the stream MAKE sure to CHECK THIS
- if (tempQ.size() < k){
- tempQ.enqueue(pt);
- }
- else{
- if (tempQ.peek().weight < pt.weight){
- tempQ.dequeue();
- tempQ.enqueue(pt);
- }
- }
- }
- Stack<DataPoint> notreverse;
- for (int i = 0; i < tempQ.size(); i++){
- notreverse.push(tempQ.dequeue());
- }
- Vector<DataPoint> reverse;
- for (int j = 0; j < notreverse.size(); j++){
- reverse.add(notreverse.pop())
- }
- return reverse;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement