const newNode = new Node(value);
if (this.root === null) {
if (value === current.value) return;
if (value < current.value) {
if (current.left === null) {
if (current.right === null) {
if (!this.root) return false;
if (value === current.value) return current;
if (value < current.value) {
return this.find(value) !== false;
if (node.left) queue.push(node.left);
if (node.right) queue.push(node.right);
// 深度优先遍历 - 前序遍历(DFS PreOrder)
function traverse(node) {
if (node.left) traverse(node.left);
if (node.right) traverse(node.right);
// 深度优先遍历 - 中序遍历(DFS InOrder)
function traverse(node) {
if (node.left) traverse(node.left);
if (node.right) traverse(node.right);
// 深度优先遍历 - 后序遍历(DFS PostOrder)
function traverse(node) {
if (node.left) traverse(node.left);
if (node.right) traverse(node.right);
if (!this.root) return null;
if (!this.root) return null;