insert(v: number): number { if (this.parents.length === this.i) { this.parents = this.parents.reduce((pre, node) => { node.left && pre.push(node.left) node.right && pre.push(node.right) return pre }, []) this.i = 0 } if (this.parents[this.i].left === null) { this.parents[this.i].left = newTreeNode(v) returnthis.parents[this.i].val } if (this.parents[this.i].right === null) { this.parents[this.i].right = newTreeNode(v) returnthis.parents[this.i++].val }
}
get_root(): TreeNode | null { returnthis.head } }
/** * Your CBTInserter object will be instantiated and called as such: * var obj = new CBTInserter(root) * var param_1 = obj.insert(v) * var param_2 = obj.get_root() */