O (n1 * log (n2)) az az átlagos esetben is, ha van 2 egyesítés bármely rendezetlen listát egy BST. Nem vagyunk kihasználva azt a tényt, hogy a lista lista vagy BST.
Szerint nekem tételezzük fel, egy BST van n1 és egyéb elemek is n2 elemekkel. Most átalakítani egy BST egy rendezett tömbben List L1 O (n1).
Egyesített BST (BST, Array)
ha (Array.size == 0) visszatérési BST, ha (Array.size == 1) helyezze az elem a BST. visszatérés BST;
Keresse az index a tömb, amelynek baloldali elem <BST.rootnode és jobbra elem> = BST.rootnode mondani Index. ha (BST.rootNode.leftNode == null) // azaz nincs bal csomópont {illessze a tömb összes a Index 0 bal- BST és} else {Egyesített BST (BST.leftNode, Array {0 index})}
ha (BST.rootNode.rightNode == null) // azaz nincs joga csomópont {illessze a tömb összes a Index Array.size be jobbra BST} else {Egyesített BST (BST.rightNode, Array {Index Array.size} )}
visszatér BST.
Ez az algoritmus kerül << időt igényel, mint O (n1 * log (n2)), mint minden alkalommal, amikor particionálásakor a tömb és a BST kezelni a részkérdésnek.