sonic-forest
Version:
High-performance (binary) tree and sorted map implementation (AVL, Splay, Radix, Red-Black)
19 lines (18 loc) • 465 B
TypeScript
export interface IRbTreeNode<K = unknown, V = unknown> {
p: IRbTreeNode<K, V> | undefined;
l: IRbTreeNode<K, V> | undefined;
r: IRbTreeNode<K, V> | undefined;
k: K;
v: V;
b: boolean;
}
export interface RbHeadlessNode {
p: RbHeadlessNode | undefined;
l: RbHeadlessNode | undefined;
r: RbHeadlessNode | undefined;
b: boolean;
}
export interface RbNodeReference<N extends IRbTreeNode> {
readonly k: N['k'];
v: N['v'];
}