0

函数 doubleTree() 执行此操作:通过在每个节点的 .left 上插入重复节点来更改树。

正如这里所解释的

我的问题是如果将调用函数更改为喜欢的顺序遍历怎么办

doubleTree(node.left);

// duplicate this node to its left 
oldLeft = node.left; 
node.left = new Node(node.data); 
node.left.left = oldLeft; 

doubleTree(node.right); 

我不认为结果会改变。如果我错了,请纠正我。那么性能呢?

4

1 回答 1

1

我认为性能和结果不会改变。由于我们正在迭代整个树,因此两种方法的时间复杂度都是 O(N)

于 2013-10-14T08:20:20.493 回答