avl-tree.js: 删除根值会通过将根设置为 undefined 来删除树

作者: jmb20创建于 2022年7月24日更新于 2022年7月24日

AVL 树的 `remove` 函数似乎通过将树的根属性设置为 `undefined` 来删除整个树,如果删除根值。这是因为该函数的调用 `this.root = balanceUpstream( node.parent );` 具有参数 `node.parent = null` ,如果 `node` 是根节点(请参阅下面注释的函数调用)。函数 `balanceUpstream` 将立即返回 `undefined` ,`remove` 将此值赋值给 `this.root` ,从而删除树。

内容来源: amejiarosario/dsa.js-data-structures-algorithms-javascript