BTree

BTree

B - Tree 클래스

Constructor

new BTree(limit)

Source:
BTree 클래스의 생성자로 현재 n이 홀수인 Btree만 구현되어 있습니다.
Parameters:
Name Type Description
limit *

Methods

_bindNode(parent, index) → {BTreeNode}

Source:
형제 노드와 합친다.
Parameters:
Name Type Description
parent BTreeNode
index number
Returns:
합쳐진 노드를 리턴한다.
Type
BTreeNode

(generator) _bindNodeGen(parent, index) → {BTree}

Source:
_bindNode 메소드의 진행 상태를 generate 하는 제너레이터 함수.
Parameters:
Name Type Description
parent BTreeNode
index number
Returns:
합쳐진 노드를 리턴한다.
Type
BTreeNode
Yields:
진행 상태가 시각적으로 표시된 자기 자신.
Type
BTree

_borrowKey(parent, index) → {boolean}

Source:
형제 노드에게서 value를 빌려온다.
Parameters:
Name Type Description
parent BTreeNode
index number
Returns:
빌려 오는 것이 가능한지 여부를 리턴한다.
Type
boolean

(generator) _borrowKeyGen(parent, index) → {BTree}

Source:
dequeue 메소드의 진행 상태를 generate 하는 제너레이터 함수.
Parameters:
Name Type Description
parent BTreeNode
index number
Returns:
빌려 오는 것이 가능한지 여부를 리턴한다.
Type
boolean
Yields:
진행 상태가 시각적으로 표시된 자기 자신.
Type
BTree

_split(parent, key) → {BTreeNode}

Source:
하나의 노드를 분할한다. 분할된 노드의 부모 노드를 리턴한다.
Parameters:
Name Type Description
parent BTreeNode
key number 기준이 되는 value값
Returns:
분할된 노드의 부모 노드.
Type
BTreeNode

(generator) _splitGen(parent, key) → {BTree}

Source:
_swap 메소드의 진행 상태를 generate 하는 제너레이터 함수.
Parameters:
Name Type Description
parent BTreeNode
key number 기준이 되는 value 값
Returns:
분할된 노드의 부모 노드.
Type
BTreeNode
Yields:
진행 상태가 시각적으로 표시된 자기 자신.
Type
BTree

_swap(delNode, index) → {*}

Source:
remove 메소드에서 사용되는 swap 헬퍼 함수.
Parameters:
Name Type Description
delNode BTreeNode 삭제될 노드.
index number 삭제를 위해 검색을 시작할 자식노드의 index.
Returns:
삭제할 값을 리턴.
Type
*

(generator) _swapGen(delNode, index) → {BTree}

Source:
_swap 메소드의 진행 상태를 generate 하는 제너레이터 함수.
Parameters:
Name Type Description
delNode BTreeNode 삭제될 노드.
index number 삭제를 위해 검색을 시작할 자식노드의 index.
Returns:
삭제할 값을 리턴.
Type
*
Yields:
진행 상태가 시각적으로 표시된 자기 자신.
Type
BTree

find(value) → {BTreeNode}

Source:
b-tree 에서 해당 값을 찾는다.
Parameters:
Name Type Description
value *
Returns:
찾은 노드를 반환한다. 값이 존재하지 않으면 false를 반환한다.
Type
BTreeNode

insert(value) → {BTree}

Source:
b-tree에 주어진 값을 삽입한다.
Parameters:
Name Type Description
value *
Throws:
이미 값이 존재하면 예외 발생.
Type
EXIST_VALUE
Returns:
값이 삽입된 자기 자신 리턴.
Type
BTree

(generator) insertGen(value) → {BTree}

Source:
insert 메소드의 진행 상태를 generate 하는 제너레이터 함수.
Parameters:
Name Type Description
value *
Throws:
이미 값이 존재하면 예외 발생.
Type
EXIST_VALUE
Returns:
값이 삽입된 자기 자신 리턴.
Type
BTree
Yields:
진행 상태가 시각적으로 표시된 자기 자신.
Type
BTree

remove(value) → {boolean}

Source:
b-tree 에서 주어진 값을 삭제한다.
Parameters:
Name Type Description
value *
Throws:
주어진 값이 존재하지 않으면 예외 발생.
Type
NON_EXIST_VALUE
Returns:
삭제한 뒤 true를 반환한다.
Type
boolean

(generator) removeGen(value) → {BTree}

Source:
remove 메소드의 진행 상태를 generate 하는 제너레이터 함수.
Parameters:
Name Type Description
value *
Throws:
주어진 값이 존재하지 않으면 예외 발생.
Type
NON_EXIST_VALUE
Returns:
삭제한 뒤 true를 반환한다.
Type
boolean
Yields:
진행 상태가 시각적으로 표시된 자기 자신.
Type
BTree

size() → {number}

Source:
현재 BTree에 있는 노드 개수를 리턴한다.
Returns:
Type
number