一个二叉树构建相关的问题分析
class Node{int data;Node left = null;Node right = null;Node parent;Node(int data, Node parent){this.data = data;this.parent = parent;}}
? ? ?这里故意增加了一个指向父节点的引用。只是让实现里面多了两行代码。
? ? ?详细的实现可以见附件里。
总结? ? 这个问题本身并不复杂,主要是对递归思想的运用要考虑清楚。而且,和二叉搜索有点类似的地方是要注意取中间值时这一段元素开头和结尾的位置关系。在TreeMap的源代码实现里有一个基于迭代器的构造实现,也可以作为一个参考。