Skip to content

Latest commit

 

History

History
455 lines (256 loc) · 9.05 KB

MAryTree.Tree.md

File metadata and controls

455 lines (256 loc) · 9.05 KB

Class: Tree<K, D>

MAryTree.Tree

Type parameters

Name Type
K TreeKey
D TreeData

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new Tree<K, D>(key, data?, options?)

Type parameters

Name Type
K TreeKey
D TreeData

Parameters

Name Type
key K
data? D
options TreeOptions

Defined in

MAryTree.ts:147

Properties

options

options: TreeOptions

Memberof

Tree

Member

options stored options passed in on object construction

Defined in

MAryTree.ts:140


root

root: TreeNode<K, D>

Memberof

Tree

Member

root reference to the tree's root node

Defined in

MAryTree.ts:135

Methods

[iterator]

[iterator](): Generator<TreeNode<K, D>, void, unknown>

Returns

Generator<TreeNode<K, D>, void, unknown>

Defined in

MAryTree.ts:443


breadthFirstTraversal

breadthFirstTraversal(root?): Generator<TreeNode<K, D>, any, unknown>

Generates nodes in an breadth-first traversal

Generator

Yields

Parameters

Name Type
root TreeNode<K, D>

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:221


connectLeftNeighbor

connectLeftNeighbor(): void

Perform a breadth-first traversal and connect all left neighbors by setting TreeNode.leftNeighbor.

The left neighbor is defined as being to the left in the same row, but not part of the same sub-tree as this nodes parent.

Returns

void

Defined in

MAryTree.ts:323


depth

depth(node?): number

Return depth of a node.

Parameters

Name Type
node TreeNode<K, D>

Returns

number

Defined in

MAryTree.ts:421


find

find(key): TreeNode<K, D>

Find a node by supplying its key.

Parameters

Name Type
key K

Returns

TreeNode<K, D>

Defined in

MAryTree.ts:407


height

height(node?): number

Return the height of a node.

Parameters

Name Type
node TreeNode<K, D>

Returns

number

Defined in

MAryTree.ts:435


inOrderTraversal

inOrderTraversal(root?): Generator<TreeNode<K, D>, any, unknown>

Generates nodes in an in-order traversal

Generator

Yields

Parameters

Name Type
root TreeNode<K, D>

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:159


insert

insert(parentNodeKey, key, data?): TreeNode<K, D>

Insert a new child node at the given parent key.

Parameters

Name Type
parentNodeKey K
key K
data? Tree<K, D> | D

Returns

TreeNode<K, D>

Defined in

MAryTree.ts:345


leftDescendantTraversal

leftDescendantTraversal(node?): Generator<TreeNode<K, D>, any, unknown>

Generates left-descendant nodes

Generator

Yields

Parameters

Name Type Default value
node TreeNode<K, D> null

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:285


leftMostDescendant

leftMostDescendant(root?, depth?): TreeNode<K, D>

Return left most descendent for a node.

The left-most descendent is defined as the left most node in the sub-tree at given depth.

Parameters

Name Type Default value
root TreeNode<K, D> undefined
depth number 0

Returns

TreeNode<K, D>

Defined in

MAryTree.ts:305


leftSiblingTraversal

leftSiblingTraversal(node?): Generator<TreeNode<K, D>, any, unknown>

Generates left-sibling nodes

Generator

Yields

Parameters

Name Type Default value
node TreeNode<K, D> null

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:269


postOrderTraversal

postOrderTraversal(root?): Generator<TreeNode<K, D>, any, unknown>

Generates nodes in a post-order traversal

Generator

Yields

Parameters

Name Type
root TreeNode<K, D>

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:187


preOrderTraversal

preOrderTraversal(root?): Generator<TreeNode<K, D>, any, unknown>

Generates nodes in an pre-order traversal

Generator

Yields

Parameters

Name Type
root TreeNode<K, D>

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:204


remove

remove(key): boolean

Remove a given node by its key

Parameters

Name Type Description
key K the tree key to remove

Returns

boolean

true if the node was found, false if it was not found.

Defined in

MAryTree.ts:386


rowTraversal

rowTraversal(n): Generator<TreeNode<K, D>, any, unknown>

Generates nodes at a single depth

Generator

Yields

Parameters

Name Type
n number

Returns

Generator<TreeNode<K, D>, any, unknown>

Defined in

MAryTree.ts:246