Heap<E> class
A priority queue implemented using a binary heap.
- Inheritance
- Available extensions
- BiMapOnIterableExtension
- BitListExtension
- ChunkedExtension
- CombinationsExtension
- CompoundIterableComparator
- CountIterableExtension
- EnumByName
- FlatMapExtension
- FlattenExtension
- FutureIterable
- GroupExtension
- IndexedExtension
- IndicesIterableExtension
- IterableExtensions
- ListMultimapOnIterableExtension
- MultisetExtension
- NullableIterableExtensions
- OperatorsExtension
- PermutationIterableExtension
- PolynomialIterableExtension
- PowerSetExtension
- ProductExtension
- RandomExtension
- RepeatIterableExtension
- SeparatedExtension
- SequencePrinterIterableExtension
- SetMultimapOnIterableExtension
- SortedListIterableExtension
- ToMapExtension
- UniqueExtension
- WindowExtension
- ZipExtension
Constructors
-
Heap({Comparator<
E> ? comparator}) -
Constructs an empty max-heap with an optional
comparator
. To create a min-heap invert the comparator. -
Heap.of(Iterable<
E> iterable, {Comparator<E> ? comparator}) -
Constructs a max-heap with an iterable of elements and an optional
comparator
. To create a min-heap invert the comparator.
Properties
- first → E
-
The first element.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- isEmpty → bool
-
Whether this heap has no elements.
no setteroverride
- isNotEmpty → bool
-
Whether this heap has at least one element.
no setteroverride
-
iterator
→ Iterator<
E> -
Returns an Iterator over the underlying values.
no setteroverride
- last → E
-
The last element.
no setterinherited
- length → int
-
Returns the number of elements in this heap.
no setteroverride
- peek → E
-
Returns the last/largest value from this heap.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- single → E
-
Checks that this iterable has only one element, and returns that element.
no setterinherited
Methods
-
any(
bool test(E element)) → bool -
Checks whether any element of this iterable satisfies
test
.inherited -
cast<
R> () → Iterable< R> -
A view of this iterable as an iterable of
R
instances.inherited -
clear(
) → void - Removes all objects from this heap.
-
contains(
Object? element) → bool -
Whether the collection contains an element equal to
element
.inherited -
elementAt(
int index) → E -
Returns the
index
th element.inherited -
every(
bool test(E element)) → bool -
Checks whether every element of this iterable satisfies
test
.inherited -
expand<
T> (Iterable< T> toElements(E element)) → Iterable<T> -
Expands each element of this Iterable into zero or more elements.
inherited
-
firstWhere(
bool test(E element), {E orElse()?}) → E -
The first element that satisfies the given predicate
test
.inherited -
fold<
T> (T initialValue, T combine(T previousValue, E element)) → T -
Reduces a collection to a single value by iteratively combining each
element of the collection with an existing value
inherited
-
followedBy(
Iterable< E> other) → Iterable<E> -
Creates the lazy concatenation of this iterable and
other
.inherited -
forEach(
void action(E element)) → void -
Invokes
action
on each element of this iterable in iteration order.inherited -
join(
[String separator = ""]) → String -
Converts each element to a String and concatenates the strings.
inherited
-
lastWhere(
bool test(E element), {E orElse()?}) → E -
The last element that satisfies the given predicate
test
.inherited -
map<
T> (T toElement(E e)) → Iterable< T> -
The current elements of this iterable modified by
toElement
.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
pop(
) → E - Removes and returns the last/largest value from this heap.
-
popAndPush(
E value) → E -
A pop immediately followed by a push. Contrary to pushAndPop this
requires a non-empty heap and never returns
value
. -
push(
E value) → void - Adds a new value onto this heap.
-
pushAll(
Iterable< E> values) → void - Adds multiple new values onto this heap.
-
pushAndPop(
E value) → E -
A push immediately followed by a pop. Contrary to popAndPush this
works on an empty heap and might directly return
value
. -
reduce(
E combine(E value, E element)) → E -
Reduces a collection to a single value by iteratively combining elements
of the collection using the provided function.
inherited
-
singleWhere(
bool test(E element), {E orElse()?}) → E -
The single element that satisfies
test
.inherited -
skip(
int count) → Iterable< E> -
Creates an Iterable that provides all but the first
count
elements.inherited -
skipWhile(
bool test(E value)) → Iterable< E> -
Creates an
Iterable
that skips leading elements whiletest
is satisfied.inherited -
take(
int count) → Iterable< E> -
Creates a lazy iterable of the
count
first elements of this iterable.inherited -
takeWhile(
bool test(E value)) → Iterable< E> -
Creates a lazy iterable of the leading elements satisfying
test
.inherited -
toList(
{bool growable = true}) → List< E> -
Creates a List containing the elements of this Iterable.
inherited
-
toSet(
) → Set< E> -
Creates a Set containing the same elements as this iterable.
inherited
-
toString(
) → String -
Returns a string representation of (some of) the elements of
this
.inherited -
where(
bool test(E element)) → Iterable< E> -
Creates a new lazy Iterable with all elements that satisfy the
predicate
test
.inherited -
whereType<
T> () → Iterable< T> -
Creates a new lazy Iterable with all elements that have type
T
.inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited