У меня есть следующие данные в моем входном файле:
1
3 2
5 6 4
7 9 8 10
Связь между данными следующая:
3 и 2 являются дочерними элементами 1, а 3 имеют детей 5 , 6, в то время как у 2 есть дочерние элементы 6 и 4.
Итак, это треугольная структура, похожая на пирамиду.
Я написал класс под названием Tree в моем код, а у дерева есть объект класса TriangleNode для дерева root:
public class TriangleNode {
public int data;
public TriangleNode leftChild;
public TriangleNode rightChild;
public Node(int item)
{
data = item;
leftChild = null;
rightChild = null;
}
}
Что мне нужно сделать конкретно, так это прочитать треугольник и заполнить все данные в мою собственную структуру, описанную выше. Было бы хорошо не дублировать объекты, поэтому, если два родителя разделяют ребенка в треугольнике, сделайте что-то вроде этого (возможно). Но мне нужно сделать это для всего файла.
tree.node.left.right = new TriangleNode(2);
tree.node.right.left = tree.node.left.right;
Может быть, кто-нибудь может помочь мне с эффективным способом заполнить мою структуру данными? Я посмотрел здесь и не нашел хорошего способа сделать это. Заранее спасибо!