Actions Status Coverage Status Hex.pm

PQueue2

Priority queue that wraps pqueue2.

q = PQueue2.new |> PQueue2.put(:a, 2) |> PQueue2.put(:b, 1) |> PQueue2.put(:c, 1)
{:b, q} = PQueue2.pop(q)
{:c, q} = PQueue2.pop(q)
{:a, q} = PQueue2.pop(q)

PQueue2 implements Collectable & Enumerable.

[:b, :c, :a, :d] == [{:a, 2}, {:b, 1}, {:c, 1}, {:d, 2}] |> Enum.into(PQueue2.new) |> Enum.to_list()

For more details please read the Doc.

Installation

Add pqueue2 to your list of dependencies in mix.exs:

def deps do
  [{:pqueue2, "~> 0.4"}]
end