2012-07-12 27 views
-5

將元素添加到排序數據結構的最有效方法是什麼?將元素添加到排序數據結構的有效方法

+3

我猜「二進制搜索」。 – 2012-07-12 21:08:55

+7

什麼樣的數據結構?它可能會有所不同,這取決於它是堆,樹,列表。你想在哪裏添加元素?在開始,結束還是在任意位置?需要更多信息才能正確回答您的問題。 – Lanaru 2012-07-12 21:10:27

+0

@Charmander:元素值不是二進制的,所以二進制搜索將不適用。數據結構是紅黑樹。 – bla 2012-07-12 21:13:55

回答

0

大多數紅黑樹包都會有一個「插入元素」方法。如果你還沒有使用它,那麼開始可能會很好。

如果你嫁給了一個沒有插入元素操作的紅黑樹實現,那麼添加這樣的方法可能是一個好主意,可能來自一些好的紅黑樹文檔: http://en.wikipedia.org/wiki/Red%E2%80%93black_tree

BTW,一樹堆比紅黑樹往往快了不少,但紅黑樹將可能有變化較少的性能: http://stromberg.dnsalias.org/~strombrg/python-tree-and-heap-comparison/