diff options
| author | Kirill Petrashin <kirill8201@yandex.ru> | 2026-03-21 12:26:54 +0300 |
|---|---|---|
| committer | Kirill Petrashin <kirill8201@yandex.ru> | 2026-03-21 12:26:54 +0300 |
| commit | 5f73b16c1e80ef40e3cb95aef36d8fe964970565 (patch) | |
| tree | 63960286a662ed36050978968702cdce97c812eb | |
| parent | a08e4c138734fd59246e70260c51b9d7b68be007 (diff) | |
Implement ppq_pop
| -rw-r--r-- | priority_queue.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/priority_queue.c b/priority_queue.c index 1cf0ac0..79377c3 100644 --- a/priority_queue.c +++ b/priority_queue.c @@ -55,8 +55,12 @@ void ppq_insert(PositionPQ *ppq, Position pos, size_t priority) { } Position ppq_pop(PositionPQ *ppq) { - (void)ppq; - todo(); + Position pos = ppq->pos; + ppq->next->prev = NULL; + PositionPQ *next = ppq->next; + free(ppq); + ppq = next; + return pos; } void ppq_reprioritize(PositionPQ *ppq, Position pos, size_t priority) { |
