BalancedTree
BalancedTree allows key-value mapping with arbitrary keys, as long as they
can be ordered. By default, Reflect.compare is used in the compare
method, which can be overridden in subclasses.
Operations have a logarithmic average and worst-case cost.
Iteration over keys and values, using keys and iterator respectively,
are in-order.
Instance Members
set(key: haxe.ds.BalancedTree.K, value: haxe.ds.BalancedTree.V): VoidBinds key to value.
If key is already bound to a value, that binding disappears.
If key is null, the result is unspecified.
| Name | Type |
|---|---|
key |
haxe.ds.BalancedTree.K |
value |
haxe.ds.BalancedTree.V |
get(key: haxe.ds.BalancedTree.K): Null<haxe.ds.BalancedTree.V>Returns the value key is bound to.
If key is not bound to any value, null is returned.
If key is null, the result is unspecified.
| Name | Type |
|---|---|
key |
haxe.ds.BalancedTree.K |
| Returns |
|---|
| Null<haxe.ds.BalancedTree.V> |
iterator(): IteratorIterates over the bound values of this BalancedTree.
This operation is performed in-order.
| Returns |
|---|
| Iterator |
keyValueIterator(): KeyValueIteratorSee Map.keyValueIterator
| Returns |
|---|
| KeyValueIterator |
keys(): IteratorIterates over the keys of this BalancedTree.
This operation is performed in-order.
| Returns |
|---|
| Iterator |
new(): VoidCreates a new BalancedTree, which is initially empty.
Private Members
root: TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>| Name | Type |
|---|---|
node |
TreeNode<iteratorLoop.K, iteratorLoop.V> |
acc |
Array<iteratorLoop.V> |
setLoop(k: haxe.ds.BalancedTree.K, v: haxe.ds.BalancedTree.V, node: TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>): TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>| Name | Type |
|---|---|
k |
haxe.ds.BalancedTree.K |
v |
haxe.ds.BalancedTree.V |
node |
TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V> |
| Returns |
|---|
| TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V> |
keysLoop(node: TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>, acc: Array<haxe.ds.BalancedTree.K>): Void| Name | Type |
|---|---|
node |
TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V> |
acc |
Array<haxe.ds.BalancedTree.K> |
balance(l: TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>, k: haxe.ds.BalancedTree.K, v: haxe.ds.BalancedTree.V, r: TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>): TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V>| Name | Type |
|---|---|
l |
TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V> |
k |
haxe.ds.BalancedTree.K |
v |
haxe.ds.BalancedTree.V |
r |
TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V> |
| Returns |
|---|
| TreeNode<haxe.ds.BalancedTree.K, haxe.ds.BalancedTree.V> |
compare(k1: haxe.ds.BalancedTree.K, k2: haxe.ds.BalancedTree.K): Int| Name | Type |
|---|---|
k1 |
haxe.ds.BalancedTree.K |
k2 |
haxe.ds.BalancedTree.K |
| Returns |
|---|
| Int |