From 6156a9ef7be4012063a042aafb4e9b0d7eadde8e Mon Sep 17 00:00:00 2001 From: "H.J" Date: Wed, 9 Oct 2024 11:35:09 -0400 Subject: cleanup --- aoc2023/build/packages/pqueue/doc/edoc-info | 3 - aoc2023/build/packages/pqueue/doc/erlang.png | Bin 2109 -> 0 bytes aoc2023/build/packages/pqueue/doc/index.html | 17 -- .../build/packages/pqueue/doc/modules-frame.html | 15 -- .../packages/pqueue/doc/overview-summary.html | 16 -- aoc2023/build/packages/pqueue/doc/pqueue.html | 166 ----------------- aoc2023/build/packages/pqueue/doc/pqueue2.html | 143 -------------- aoc2023/build/packages/pqueue/doc/pqueue3.html | 162 ---------------- aoc2023/build/packages/pqueue/doc/pqueue4.html | 205 --------------------- aoc2023/build/packages/pqueue/doc/stylesheet.css | 55 ------ 10 files changed, 782 deletions(-) delete mode 100644 aoc2023/build/packages/pqueue/doc/edoc-info delete mode 100644 aoc2023/build/packages/pqueue/doc/erlang.png delete mode 100644 aoc2023/build/packages/pqueue/doc/index.html delete mode 100644 aoc2023/build/packages/pqueue/doc/modules-frame.html delete mode 100644 aoc2023/build/packages/pqueue/doc/overview-summary.html delete mode 100644 aoc2023/build/packages/pqueue/doc/pqueue.html delete mode 100644 aoc2023/build/packages/pqueue/doc/pqueue2.html delete mode 100644 aoc2023/build/packages/pqueue/doc/pqueue3.html delete mode 100644 aoc2023/build/packages/pqueue/doc/pqueue4.html delete mode 100644 aoc2023/build/packages/pqueue/doc/stylesheet.css (limited to 'aoc2023/build/packages/pqueue/doc') diff --git a/aoc2023/build/packages/pqueue/doc/edoc-info b/aoc2023/build/packages/pqueue/doc/edoc-info deleted file mode 100644 index 5e5a8d3..0000000 --- a/aoc2023/build/packages/pqueue/doc/edoc-info +++ /dev/null @@ -1,3 +0,0 @@ -%% encoding: UTF-8 -{application,pqueue}. -{modules,[pqueue,pqueue2,pqueue3,pqueue4]}. diff --git a/aoc2023/build/packages/pqueue/doc/erlang.png b/aoc2023/build/packages/pqueue/doc/erlang.png deleted file mode 100644 index 987a618..0000000 Binary files a/aoc2023/build/packages/pqueue/doc/erlang.png and /dev/null differ diff --git a/aoc2023/build/packages/pqueue/doc/index.html b/aoc2023/build/packages/pqueue/doc/index.html deleted file mode 100644 index d55b5e6..0000000 --- a/aoc2023/build/packages/pqueue/doc/index.html +++ /dev/null @@ -1,17 +0,0 @@ - - - -The pqueue application - - - - - - -<h2>This page uses frames</h2> -<p>Your browser does not accept frames. -<br>You should go to the <a href="overview-summary.html">non-frame version</a> instead. -</p> - - - \ No newline at end of file diff --git a/aoc2023/build/packages/pqueue/doc/modules-frame.html b/aoc2023/build/packages/pqueue/doc/modules-frame.html deleted file mode 100644 index 5a87cc4..0000000 --- a/aoc2023/build/packages/pqueue/doc/modules-frame.html +++ /dev/null @@ -1,15 +0,0 @@ - - - -The pqueue application - - - -

Modules

- - - - -
pqueue
pqueue2
pqueue3
pqueue4
- - \ No newline at end of file diff --git a/aoc2023/build/packages/pqueue/doc/overview-summary.html b/aoc2023/build/packages/pqueue/doc/overview-summary.html deleted file mode 100644 index e2f8906..0000000 --- a/aoc2023/build/packages/pqueue/doc/overview-summary.html +++ /dev/null @@ -1,16 +0,0 @@ - - - - -The pqueue application - - - - -

The pqueue application

- -
- -

Generated by EDoc

- - diff --git a/aoc2023/build/packages/pqueue/doc/pqueue.html b/aoc2023/build/packages/pqueue/doc/pqueue.html deleted file mode 100644 index 40b05ac..0000000 --- a/aoc2023/build/packages/pqueue/doc/pqueue.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - -Module pqueue - - - - -
- -

Module pqueue

- -

Static Priority Queue.

- This priority queue implementation depends on a static number of priorities - (-20 (high) to 20 (low)) so that tuple access times can be exploited for - quick in/out priority queue operations. -

Copyright © 2011-2020 Michael Truog

- -

Version: 2.0.1 Nov 26 2020 14:55:34 - ------------------------------------------------------------------------

-

Authors: Michael Truog (mjtruog at protonmail dot com).

- -

Description

-

Static Priority Queue.

- This priority queue implementation depends on a static number of priorities - (-20 (high) to 20 (low)) so that tuple access times can be exploited for - quick in/out priority queue operations. This implementation was created to - avoid the slowness within the priority queue used by both RabbitMQ and Riak - (https://github.com/basho/riak_core/blob/master/src/priority_queue.erl). -

Data Types

- -

pqueue()

-

pqueue() = {integer(), {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, queue:queue(), {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}} | {empty, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, queue:queue(), {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}, {queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue(), queue:queue()}}

- - -

Function Index

- - - - - - - - - - - - -
in/2 -

Append an item to the tail of the 0 priority queue.

- O(1).
in/3 -

Append an item to the tail of a specific priority queue.

- O(1).
is_empty/1 -

Check if the priority queue is empty.

- O(1).
is_queue/1 -

Check if the priority queue type is as expected.

- O(1).
join/2 -

Join two priority queues.

- O(N).
len/1 -

Determine the length of a priority queue.

- O(N).
new/0 -

Create a new priority queue.

- O(1).
out/1 -

Take an item from the head of the priority queue.

- O(1) amortized, O(N) worst case.
out/2 -

Take an item of a specific priority from the head of the queue.

- O(1) amortized, O(N) worst case.
pout/1 -

Take an item from the head of the priority queue.

- Includes the priority in the return value.
test/0 -

Regression test.

.
to_list/1 -

Convert the priority queue to a list.

- O(N).
- -

Function Details

- -

in/2

-
-

in(X::term(), Q::pqueue()) -> pqueue()

-

-

Append an item to the tail of the 0 priority queue.

- O(1)

- -

in/3

-
-

in(X::term(), P::integer(), Q::pqueue()) -> pqueue()

-

-

Append an item to the tail of a specific priority queue.

- O(1)

- -

is_empty/1

-
-

is_empty(X1::pqueue()) -> true | false

-

-

Check if the priority queue is empty.

- O(1)

- -

is_queue/1

-
-

is_queue(X1::pqueue()) -> true | false

-

-

Check if the priority queue type is as expected.

- O(1)

- -

join/2

-
-

join(X1::pqueue(), X2::pqueue()) -> pqueue()

-

-

Join two priority queues.

- O(N)

- -

len/1

-
-

len(X1::pqueue()) -> non_neg_integer()

-

-

Determine the length of a priority queue.

- O(N)

- -

new/0

-
-

new() -> pqueue()

-

-

Create a new priority queue.

- O(1)

- -

out/1

-
-

out(Q::pqueue()) -> {{value, term()}, pqueue()} | {empty, pqueue()}

-

-

Take an item from the head of the priority queue.

- O(1) amortized, O(N) worst case

- -

out/2

-
-

out(P::integer(), Q::pqueue()) -> {{value, term()}, pqueue()} | {empty, pqueue()}

-

-

Take an item of a specific priority from the head of the queue.

- O(1) amortized, O(N) worst case

- -

pout/1

-
-

pout(Q::pqueue()) -> {{value, term(), integer()}, pqueue()} | {empty, pqueue()}

-

-

Take an item from the head of the priority queue.

- Includes the priority in the return value. - O(1) amortized, O(N) worst case

- -

test/0

-
-

test() -> any()

-

-

Regression test.

-

- -

to_list/1

-
-

to_list(X1::pqueue()) -> [term()]

-

-

Convert the priority queue to a list.

- O(N)

-
- - -

Generated by EDoc

- - diff --git a/aoc2023/build/packages/pqueue/doc/pqueue2.html b/aoc2023/build/packages/pqueue/doc/pqueue2.html deleted file mode 100644 index 2942b84..0000000 --- a/aoc2023/build/packages/pqueue/doc/pqueue2.html +++ /dev/null @@ -1,143 +0,0 @@ - - - - -Module pqueue2 - - - - -
- -

Module pqueue2

- -

Skew Heap Priority Queue.

- Ulf Wiger suggested pursuing a skew heap as an optimal Erlang priority - queue implementation. -

Copyright © 2011-2020 Michael Truog

- -

Version: 2.0.1 Nov 26 2020 14:55:32 - ------------------------------------------------------------------------

-

Authors: Michael Truog (mjtruog at protonmail dot com).

- -

Description

-

Skew Heap Priority Queue.

- Ulf Wiger suggested pursuing a skew heap as an optimal Erlang priority - queue implementation. Unfortunately, testing has shown this solution to - be more than 2 times slower than pqueue. -

Data Types

- -

pqueue2()

-

pqueue2() = empty | {integer(), pqueue2(), pqueue2(), element, term()} | {integer(), pqueue2(), pqueue2(), queue, queue:queue()}

- - -

Function Index

- - - - - - - - - - - -
in/2 -

Append an item to the tail of the 0 priority queue.

.
in/3 -

Append an item to the tail of a specific priority queue.

.
is_empty/1 -

Check if the priority queue is empty.

.
is_queue/1 -

Check if the priority queue type is as expected.

.
len/1 -

Determine the length of a priority queue.

.
new/0 -

Create a new priority queue.

.
out/1 -

Take an item from the head of the priority queue.

.
out/2 -

Take an item of a specific priority from the head of the queue.

.
pout/1 -

Take an item from the head of the priority queue.

- Includes the priority in the return value.
test/0 -

Regression test.

.
to_list/1 -

Convert the priority queue to a list.

.
- -

Function Details

- -

in/2

-
-

in(Value::term(), H::pqueue2()) -> pqueue2()

-

-

Append an item to the tail of the 0 priority queue.

-

- -

in/3

-
-

in(Value::term(), P::integer(), H::pqueue2()) -> pqueue2()

-

-

Append an item to the tail of a specific priority queue.

-

- -

is_empty/1

-
-

is_empty(X1::pqueue2()) -> true | false

-

-

Check if the priority queue is empty.

-

- -

is_queue/1

-
-

is_queue(X1::pqueue2()) -> true | false

-

-

Check if the priority queue type is as expected.

-

- -

len/1

-
-

len(H::pqueue2()) -> non_neg_integer()

-

-

Determine the length of a priority queue.

-

- -

new/0

-
-

new() -> pqueue2()

-

-

Create a new priority queue.

-

- -

out/1

-
-

out(X1::pqueue2()) -> {{value, term()}, pqueue2()} | {empty, pqueue2()}

-

-

Take an item from the head of the priority queue.

-

- -

out/2

-
-

out(P::integer(), H::pqueue2()) -> {{value, term()}, pqueue2()} | {empty, pqueue2()}

-

-

Take an item of a specific priority from the head of the queue.

-

- -

pout/1

-
-

pout(X1::pqueue2()) -> {{value, term(), integer()}, pqueue2()} | {empty, pqueue2()}

-

-

Take an item from the head of the priority queue.

- Includes the priority in the return value.

- -

test/0

-
-

test() -> any()

-

-

Regression test.

-

- -

to_list/1

-
-

to_list(H::pqueue2()) -> [term()]

-

-

Convert the priority queue to a list.

-

-
- - -

Generated by EDoc

- - diff --git a/aoc2023/build/packages/pqueue/doc/pqueue3.html b/aoc2023/build/packages/pqueue/doc/pqueue3.html deleted file mode 100644 index 35f1a7b..0000000 --- a/aoc2023/build/packages/pqueue/doc/pqueue3.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - -Module pqueue3 - - - - -
- -

Module pqueue3

- -

A Large Priority Queue.

- This priority queue implementation depends on layered tuples, so that tuple - access times can be exploited for quick in/out priority queue operations - when using 64 or more total priorities. -

Copyright © 2011-2020 Michael Truog

- -

Version: 2.0.1 Nov 26 2020 14:55:32 - ------------------------------------------------------------------------

-

Authors: Michael Truog (mjtruog at protonmail dot com).

- -

Description

-

A Large Priority Queue.

- This priority queue implementation depends on layered tuples, so that tuple - access times can be exploited for quick in/out priority queue operations - when using 64 or more total priorities. This implementation was created - to avoid the slowness within the priority queue used by - both RabbitMQ and Riak - (https://github.com/basho/riak_core/blob/master/src/priority_queue.erl). -

Data Types

- -

pqueue3()

-

pqueue3() = {integer(), integer(), empty | integer(), tuple()}

- - -

pqueue3_empty()

-

pqueue3_empty() = {integer(), integer(), empty, tuple()}

- - -

Function Index

- - - - - - - - - - - -
in/2 -

Append an item to the tail of the 0 priority queue.

- O(1).
in/3 -

Append an item to the tail of a specific priority queue.

- O(1).
is_empty/1 -

Check if the priority queue is empty.

- O(1).
is_queue/1 -

Check if the priority queue type is as expected.

- O(1).
len/1 -

Determine the length of a priority queue.

- O(N).
new/0 -

Create a new priority queue.

- O(1).
new/1 -

Create a new priority queue with customization options.

- O(1).
out/1 -

Take an item from the head of the priority queue.

- O(1) amortized, O(N) worst case.
out/2 -

Take an item of a specific priority from the head of the queue.

- O(1) amortized, O(N) worst case.
pout/1 -

Take an item from the head of the priority queue.

- Includes the priority in the return value.
to_list/1 -

Convert the priority queue to a list.

- O(N).
- -

Function Details

- -

in/2

-
-

in(Value::term(), Q::pqueue3()) -> pqueue3()

-

-

Append an item to the tail of the 0 priority queue.

- O(1)

- -

in/3

-
-

in(Value::term(), P::integer(), X3::pqueue3()) -> pqueue3()

-

-

Append an item to the tail of a specific priority queue.

- O(1)

- -

is_empty/1

-
-

is_empty(Q::pqueue3()) -> true | false

-

-

Check if the priority queue is empty.

- O(1)

- -

is_queue/1

-
-

is_queue(X1::pqueue3()) -> true | false

-

-

Check if the priority queue type is as expected.

- O(1)

- -

len/1

-
-

len(Q::pqueue3()) -> non_neg_integer()

-

-

Determine the length of a priority queue.

- O(N)

- -

new/0

-
-

new() -> pqueue3_empty()

-

-

Create a new priority queue.

- O(1)

- -

new/1

-
-

new(Options::[{atom(), term()}]) -> pqueue3()

-

-

Create a new priority queue with customization options.

- O(1)

- -

out/1

-
-

out(Q::pqueue3()) -> {{value, term()}, pqueue3()} | {empty, pqueue3()}

-

-

Take an item from the head of the priority queue.

- O(1) amortized, O(N) worst case

- -

out/2

-
-

out(P::integer(), Q::pqueue3()) -> {{value, term()}, pqueue3()} | {empty, pqueue3()}

-

-

Take an item of a specific priority from the head of the queue.

- O(1) amortized, O(N) worst case

- -

pout/1

-
-

pout(Q::pqueue3()) -> {{value, term(), integer()}, pqueue3()} | {empty, pqueue3()}

-

-

Take an item from the head of the priority queue.

- Includes the priority in the return value. - O(1) amortized, O(N) worst case

- -

to_list/1

-
-

to_list(Q::pqueue3()) -> [term()]

-

-

Convert the priority queue to a list.

- O(N)

-
- - -

Generated by EDoc

- - diff --git a/aoc2023/build/packages/pqueue/doc/pqueue4.html b/aoc2023/build/packages/pqueue/doc/pqueue4.html deleted file mode 100644 index edcdb6e..0000000 --- a/aoc2023/build/packages/pqueue/doc/pqueue4.html +++ /dev/null @@ -1,205 +0,0 @@ - - - - -Module pqueue4 - - - - -
- -

Module pqueue4

- -

Static Priority Queue.

- This priority queue implementation depends on a static number of priorities - (-128 (high) to 128 (low)) so that tuple access times can be exploited for - quick in/out priority queue operations. -

Copyright © 2011-2020 Michael Truog

- -

Version: 2.0.1 Nov 26 2020 14:55:34 - ------------------------------------------------------------------------

-

Authors: Michael Truog (mjtruog at protonmail dot com).

- -

Description

-

Static Priority Queue.

- This priority queue implementation depends on a static number of priorities - (-128 (high) to 128 (low)) so that tuple access times can be exploited for - quick in/out priority queue operations. This implementation was created to - avoid the slowness within the priority queue used by both RabbitMQ and Riak - (https://github.com/basho/riak_core/blob/master/src/priority_queue.erl). -

Data Types

- -

pqueue4()

-

pqueue4() = pqueue4(any())

- - -

pqueue4()

-

pqueue4(T) = {priority() | empty, non_neg_integer(), {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, queue:queue(T), {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}, {queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T), queue:queue(T)}}

- - -

priority()

-

priority() = -128..128

- - -

Function Index

- - - - - - - - - - - - - - - -
filter/2 -

Filter the priority queue.

- O(N).
filter/3 -

Filter a specific priority within the priority queue.

- O(N).
in/2 -

Append an item to the tail of the 0 priority queue.

- O(1).
in/3 -

Append an item to the tail of a specific priority queue.

- O(1).
is_empty/1 -

Check if the priority queue is empty.

- O(1).
is_queue/1 -

Check if the priority queue type is as expected.

- O(1).
len/1 -

Determine the length of a priority queue.

- O(1).
new/0 -

Create a new priority queue.

- O(1).
out/1 -

Take an item from the head of the priority queue.

- O(1) amortized, O(N) worst case.
out/2 -

Take an item of a specific priority from the head of the queue.

- O(1) amortized, O(N) worst case.
pout/1 -

Take an item from the head of the priority queue.

- Includes the priority in the return value.
remove_unique/2 -

Remove a unique value from the priority queue with a binary predicate.

- O(N) but smaller constant than filter/2.
remove_unique/3 -

Remove a unique value in a specific priority within the priority queue with a binary predicate.

- O(N) but smaller constant than filter/3.
to_list/1 -

Convert the priority queue to a list.

- O(N).
to_plist/1 -

Convert the priority queue to a list with priorities.

- O(N).
- -

Function Details

- -

filter/2

-
-

filter(F::fun((any()) -> boolean()), Q::pqueue4()) -> pqueue4()

-

-

Filter the priority queue.

- O(N)

- -

filter/3

-
-

filter(F::fun((any()) -> boolean()), P::integer(), Q::pqueue4()) -> pqueue4()

-

-

Filter a specific priority within the priority queue.

- O(N)

- -

in/2

-
-

in(X::any(), Q::pqueue4()) -> pqueue4()

-

-

Append an item to the tail of the 0 priority queue.

- O(1)

- -

in/3

-
-

in(X::any(), P::integer(), Q::pqueue4()) -> pqueue4()

-

-

Append an item to the tail of a specific priority queue.

- O(1)

- -

is_empty/1

-
-

is_empty(X1::pqueue4()) -> true | false

-

-

Check if the priority queue is empty.

- O(1)

- -

is_queue/1

-
-

is_queue(X1::pqueue4()) -> true | false

-

-

Check if the priority queue type is as expected.

- O(1)

- -

len/1

-
-

len(X1::pqueue4()) -> non_neg_integer()

-

-

Determine the length of a priority queue.

- O(1)

- -

new/0

-
-

new() -> pqueue4()

-

-

Create a new priority queue.

- O(1)

- -

out/1

-
-

out(Q::pqueue4()) -> {{value, any()}, pqueue4()} | {empty, pqueue4()}

-

-

Take an item from the head of the priority queue.

- O(1) amortized, O(N) worst case

- -

out/2

-
-

out(P::integer(), Q::pqueue4()) -> {{value, any()}, pqueue4()} | {empty, pqueue4()}

-

-

Take an item of a specific priority from the head of the queue.

- O(1) amortized, O(N) worst case

- -

pout/1

-
-

pout(Q::pqueue4()) -> {{value, any(), integer()}, pqueue4()} | {empty, pqueue4()}

-

-

Take an item from the head of the priority queue.

- Includes the priority in the return value. - O(1) amortized, O(N) worst case

- -

remove_unique/2

-
-

remove_unique(F::fun((any()) -> boolean()), Q::pqueue4()) -> {boolean(), pqueue4()}

-

-

Remove a unique value from the priority queue with a binary predicate.

- O(N) but smaller constant than filter/2

- -

remove_unique/3

-
-

remove_unique(F::fun((any()) -> boolean()), P::integer(), Q::pqueue4()) -> {boolean(), pqueue4()}

-

-

Remove a unique value in a specific priority within the priority queue with a binary predicate.

- O(N) but smaller constant than filter/3

- -

to_list/1

-
-

to_list(Q::pqueue4()) -> list()

-

-

Convert the priority queue to a list.

- O(N)

- -

to_plist/1

-
-

to_plist(Q::pqueue4()) -> [{priority(), list()}]

-

-

Convert the priority queue to a list with priorities.

- O(N)

-
- - -

Generated by EDoc

- - diff --git a/aoc2023/build/packages/pqueue/doc/stylesheet.css b/aoc2023/build/packages/pqueue/doc/stylesheet.css deleted file mode 100644 index ab170c0..0000000 --- a/aoc2023/build/packages/pqueue/doc/stylesheet.css +++ /dev/null @@ -1,55 +0,0 @@ -/* standard EDoc style sheet */ -body { - font-family: Verdana, Arial, Helvetica, sans-serif; - margin-left: .25in; - margin-right: .2in; - margin-top: 0.2in; - margin-bottom: 0.2in; - color: #000000; - background-color: #ffffff; -} -h1,h2 { - margin-left: -0.2in; -} -div.navbar { - background-color: #add8e6; - padding: 0.2em; -} -h2.indextitle { - padding: 0.4em; - background-color: #add8e6; -} -h3.function,h3.typedecl { - background-color: #add8e6; - padding-left: 1em; -} -div.spec { - margin-left: 2em; - background-color: #eeeeee; -} -a.module { - text-decoration:none -} -a.module:hover { - background-color: #eeeeee; -} -ul.definitions { - list-style-type: none; -} -ul.index { - list-style-type: none; - background-color: #eeeeee; -} - -/* - * Minor style tweaks - */ -ul { - list-style-type: square; -} -table { - border-collapse: collapse; -} -td { - padding: 3 -} -- cgit v1.2.3