如何正确地将元素放入不可变二叉树?

时间:2016-11-16 10:47:19

标签: java binary-tree immutability

我实现了一个不可变的二叉树,我想知道这是否是将元素放入其中的正确方法。提前谢谢。

BinaryTree<Integer, Integer> treeMap = new BinaryTree<>(Integer::compare);
treeMap = (BinaryTree<Integer, Integer>) treeMap.put(1, 1);
treeMap = (BinaryTree<Integer, Integer>) treeMap.put(3, 2);
treeMap = (BinaryTree<Integer, Integer>) treeMap.put(2, 2);

1 个答案:

答案 0 :(得分:0)

不,似乎这不是将元素放入不可变二进制树类的正确方法。

你必须转换为BinaryTree,因为“.put”方法是Map的一个方法,所以你基本上使用了一个Map对象。

似乎这是一个从Map扩展的自定义类,我建议你检查类代码并搜索“addLefChild”和“addRightChild”之类的方法,或类似的东西。

我希望它有所帮助。