(value: T)
| 322 | } |
| 323 | |
| 324 | #findNode(value: T): BinarySearchNode<T> | null { |
| 325 | let node: BinarySearchNode<T> | null = this.#root; |
| 326 | while (node) { |
| 327 | const order: number = this.#compare(value as T, node.value); |
| 328 | if (order === 0) break; |
| 329 | const direction: "left" | "right" = order < 0 ? "left" : "right"; |
| 330 | node = node[direction]; |
| 331 | } |
| 332 | return node; |
| 333 | } |
| 334 | |
| 335 | #rotateNode(node: BinarySearchNode<T>, direction: Direction) { |
| 336 | const replacementDirection: Direction = direction === "left" |
no outgoing calls
no test coverage detected