在n-ary树中插入,删除和类似操作是否有可能比O(n)更短的时间?

时间:2018-02-19 17:29:12

标签: java tree time-complexity

我在大学里实现了一个n-ary树并且插入一个节点作为另一个节点的子节点,复杂性是O(n)因为我必须经历它并寻找父亲插入它,并且因为它没有组织(像BST)我无法减少搜索。我的问题是:在n-ary树中插入,删除,获取父级和类似操作是否有可能比O(n)更短的时间?

1 个答案:

答案 0 :(得分:0)

如果您知道父母,正如您所提到的,复杂性为O(1),因为您只需将其添加到子项列表中。

O(n)如果你想把一个节点放入你的"愚蠢的" BST的(树,不是你)和O(log(n))。

但是有一个多变量的变体可以降低一个功能的复杂性,而不是另一个功能,具体取决于您的需求和数据。