У меня есть класс, как это:Как сформировать дерево из набора данных с циклическими отношениями?
class Foo {
public String name = "";
public ArrayList<Foo> children = new ArrayList<Foo>();
}
Теперь у меня есть около двух тысяч таких объектов «Foo», хранящихся в ArrayList, и они связаны друг с другом, как вы можете видеть из приведенного выше фрагмента кода. Теперь эти отношения могут быть циклическими: A может иметь дочерний элемент B, который может иметь дочерний элемент C, который может иметь дочерний элемент A. Что я хочу сделать, это распечатать дерево этих отношений, игнорируя циклические отношения, например:
ObjA
ObjB
ObjC
ObjD
ObjB
ObjA
Как это сделать? Это не должно быть быстро или что-то еще, это дерево будет в основном для обеспечения результатов моей программы.
Спасибо! Это было так просто, я не понимаю, как я сам не видел. :) – manabreak