如何可视化此二叉树插入的堆栈名气?

问题描述 投票:0回答:1

如何可视化此二叉树插入的堆栈名气?这非常重要,因为这本质上是递归的。一旦我理解了递归,我就能够编写递归解决方案。在这里我理解它如何递归工作的概念,但不完全理解堆栈框架的外观......例如

这就是我们如何可视化递归和的方式,有什么方法可以为二叉树插入做到这一点吗?

这是代码:

java data-structures binary-tree
1个回答
0
投票

我想出了一个图表,可以帮助理解堆栈的元素和心理因素。

假设我们添加 5,3,2 : 这就是我们如何在心里想象:

请参考此代码进行理解...

private BTNode insert(BTNode node, int key, String value) {


//If node is null, set the new node as it is...
if (node == null) {

    //create the new node to be inserted and set it
    node = new BTNode(key, value);

    return node;
}

// Else walk till the node has key < that node's key
if (key < node.key) {
    node.left = insert(node.left, key, value);
}

// Else walk till the node has key > that node's key
if (key > node.key) {
    node.right = insert(node.right, key, value);
}

return node;
}
© www.soinside.com 2019 - 2024. All rights reserved.