Home Reference Source
import {BinarySearchTree} from 'bimsurfer3/viewer/collections/binarysearchtree.js'
public class | source

BinarySearchTree

Direct Subclass:

AvlTree

Constructor Summary

Public Constructor
public

constructor(compareFn: *)

Member Summary

Public Members
public

root: *

public

Method Summary

Public Methods
public

checkInvariants(node: *)

public

delete(item: *)

Delete a key value pair from the Map.

public

entrySet(): *

public

get(key: *): *

public

getKeyValue(key: *): Object

Get value for a key

public

has(key: *): *

public

inspect(): *

public

keys(): *

public
public

put(key: *, value: *): Object

Insert a key value pair

public

reCalcHeight(pNode: *)

public

set(key: *, value: *): *

public

traverse(node: *, fn: *)

Inorder traversal, apply provided function on each visited node

Public Constructors

public constructor(compareFn: *) source

Params:

NameTypeAttributeDescription
compareFn *

{userCompareFn=}, fn(a,b) return 1 if b>a, -1 if b<a, 0 otherwise

Public Members

public root: * source

public size: number source

Public Methods

public checkInvariants(node: *) source

Params:

NameTypeAttributeDescription
node *

public delete(item: *) source

Delete a key value pair from the Map.

Params:

NameTypeAttributeDescription
item *

{*} key to deleted

public entrySet(): * source

Return:

*

public get(key: *): * source

Params:

NameTypeAttributeDescription
key *

Return:

*

public getKeyValue(key: *): Object source

Get value for a key

Params:

NameTypeAttributeDescription
key *

Return:

Object

{key:key used in query,value:value of the key }, null if key was not found

public has(key: *): * source

Params:

NameTypeAttributeDescription
key *

Return:

*

public inspect(): * source

Return:

*

public keys(): * source

Return:

*

public keysAsArray(): * source

Return:

*

public put(key: *, value: *): Object source

Insert a key value pair

Params:

NameTypeAttributeDescription
key *
value *

Return:

Object

public reCalcHeight(pNode: *) source

Params:

NameTypeAttributeDescription
pNode *

public set(key: *, value: *): * source

Params:

NameTypeAttributeDescription
key *
value *

Return:

*

public traverse(node: *, fn: *) source

Inorder traversal, apply provided function on each visited node

Params:

NameTypeAttributeDescription
node *

{Object=} Start at root if not given

fn *

{function} Callback function called for every node visited