AvlTree<T> constructor
AvlTree<T> ({
- int compare(
- T v1,
- T v2
- dynamic withEquivalenceClasses = false,
Creates an AVL tree.
compare
is an optional compare function for two values of
type T
. If missing or null, T must extend Comparable and
the tree compares two values v1
and v2
using T
s
compareTo
function.
If withEquivalenceClasses
is true, the tree stores multiple values
which are equal with respect to compare
but not identical with
respect to Darts identical()
-function. In this case a tree node
become multi-valued.
Implementation
AvlTree({int compare(T v1, T v2)?, withEquivalenceClasses = false}) {
if (compare != null) {
_compare = compare;
} else {
_compare = (Comparable v1, Comparable v2) => v1.compareTo(v2);
}
this._withEquivalenceClasses = withEquivalenceClasses;
}