【发布时间】:2014-01-29 09:27:35
【问题描述】:
在 java 中,我知道引用也是按值传递的。让这个工作的唯一方法是返回 prev 吗?还有其他选择吗?
head 是类变量
convertTreeToSortedDoublyLinkedList(root, null);
private void convertTreeToSortedDoublyLinkedList(Node node, Node prev) {
if(node == null){
return;
}
convertTreeToSortedDoublyLinkedList(node.left, prev);
node.left = prev;
if(prev != null) {
prev.right = node;
} else {
head = node;
}
Node right = node.right;
head.left = node;
node.right = head;
prev = node;
convertTreeToSortedDoublyLinkedList(right, prev);
}
【问题讨论】:
标签: java recursion pass-by-reference mutable