1)我有一棵树,我将在运行时插入节点,我是否知道如何按自然顺序对它们进行排序,因为节点将在最后一个索引之后。
示例:用户添加属于电子产品的产品,该产品将在其他所有人的“查看”电子类别下显示。我如何知道如何确保“电子”下的节点按自然顺序排序?
2)在我的树中有一些对象出现在另一个分支中,我可以知道如何跟踪这些类型的节点吗?(2个不同的节点,但具有相同的数据)
是的我使用hashmap来跟踪正常节点,但我遇到问题找到解决此问题的方法。
跟踪的目的是在编辑或更新或插入子级时更新节点...
我正在考虑使用对象作为键或散列映射,以便单独识别每个对象。
答案 0 :(得分:1)
1)基本上,你必须要弄明白自己。
假设您知道父节点,您可以要求父节点传回一个索引,该索引将插入新节点。然后,您可以在调用defaultTreeMode.insertNodeInto(MutableTreeNode child, MutableTreeNode parent, int index)
方法时使用此信息。
查看Comparable
和Comparator
,了解有关此
2)跟踪意味着什么?
答案 1 :(得分:1)
1)您在节点中插入哪种类型的数据结构。如果你插入任何类,你可以使用一个额外的变量,如位置,你可以保留索引。
2)您可以使用已用项目列表。在插入新节点之前,查找任何项目(如果它已经是int tree)。