如何在java中实现无二叉树

如何在java中实现无二叉树,java,tree,structure,Java,Tree,Structure,我需要读取如下XML文件: <body> <hierarchies> <hierarchy> <hierarchy-code>1</hierarchy-code> <hierarchy-label>1</hierarchy-label> <hierarchy-parent_code></hierarchy-parent_code>

我需要读取如下XML文件:

<body>
<hierarchies>
    <hierarchy>
        <hierarchy-code>1</hierarchy-code>
        <hierarchy-label>1</hierarchy-label>
        <hierarchy-parent_code></hierarchy-parent_code>
        <terminal>n</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>2</hierarchy-code>
        <hierarchy-label>2</hierarchy-label>
        <hierarchy-parent_code>1</hierarchy-parent_code>
        <terminal>n</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>3</hierarchy-code>
        <hierarchy-label>3</hierarchy-label>
        <hierarchy-parent_code>1</hierarchy-parent_code>
        <terminal>n</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>4</hierarchy-code>
        <hierarchy-label>4</hierarchy-label>
        <hierarchy-parent_code>1</hierarchy-parent_code>
        <terminal>n</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>5</hierarchy-code>
        <hierarchy-label>5</hierarchy-label>
        <hierarchy-parent_code>2</hierarchy-parent_code>
        <terminal>y</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>6</hierarchy-code>
        <hierarchy-label>6</hierarchy-label>
        <hierarchy-parent_code>3</hierarchy-parent_code>
        <terminal>y</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>7</hierarchy-code>
        <hierarchy-label>7</hierarchy-label>
        <hierarchy-parent_code>4</hierarchy-parent_code>
        <terminal>n</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>6</hierarchy-code>
        <hierarchy-label>6</hierarchy-label>
        <hierarchy-parent_code>3</hierarchy-parent_code>
        <terminal>y</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>8</hierarchy-code>
        <hierarchy-label>8</hierarchy-label>
        <hierarchy-parent_code>7</hierarchy-parent_code>
        <terminal>y</terminal>
    </hierarchy>

    <hierarchy>
        <hierarchy-code>9</hierarchy-code>
        <hierarchy-label>9</hierarchy-label>
        <hierarchy-parent_code>7</hierarchy-parent_code>
        <terminal>y</terminal>
    </hierarchy>

</hierarchies>

1.
1.
N
2.
2.
1.
N
3.
3.
1.
N
4.
4.
1.
N
5.
5.
2.
Y
6.
6.
3.
Y
7.
7.
4.
N
6.
6.
3.
Y
8.
8.
7.
Y
9
9
7.
Y

我能够解析XML文件,但我不知道应该使用什么样的结构来用Java表示它

一个节点可以有多个子节点,但只能有一个父节点


我曾想过使用列表或字符串数组,但我认为这不是很有效。

您想对数据做什么?您需要选择一种适合于处理该数据的算法的数据结构。所以我们需要更多的信息来回答。我在MongoDB中保存了另一个层次结构树,当我收到一个XML文件时,我应该更新数据库中的树。在进程结束时,数据库中的“我的树”必须与XML文件中的“我的树”相同,除非节点指定了不存在的父级。我还必须检查另一个约束,以便创建报告。我不知道什么样的数据结构更有效。谢谢