priority-queue v1.1.2
Crystal Lang Priority Queue
Usage
Simple priority queue.
- Higher numbers
pop
first - lower numbers
shift
first - always insert using
push
or<<
to maintain validity
require 'priority-queue'
queue = Priority::Queue(String).new
queue.push 10, "Insert 1"
queue.push 20, "Insert 2"
queue.pop.value # => "Insert 2"
queue.pop.value # => "Insert 1"
A named priority queue where newer items with the same name replace existing items. The highest of the two priorities is inherited by the new item.
require 'priority-queue'
queue = Priority::NamedQueue(String).new
queue.push 20, "Insert 1", :named
queue.push 20, "Insert 2"
queue.push 10, "Insert 3", :named
queue.size # => 2
queue.pop.value # => "Insert 3"
queue.pop.value # => "Insert 2"
Repository
priority-queue
Owner
Statistic
- 13
- 1
- 0
- 7
- 1
- 4 months ago
- December 23, 2018
License
MIT License
Links
Synced at
Sat, 21 Dec 2024 22:34:17 GMT
Languages