📜  门| GATE MOCK 2017 |第46章

📅  最后修改于: 2021-06-29 04:12:32             🧑  作者: Mango

给定两个平衡二进制搜索树,B1具有n个元素,B2具有m个元素,将这些树合并以形成另一个包含m + n个元素的平衡二进制树的最著名算法的时间复杂度是多少?

(A) O(m + n)
(B) O(口号)

(C) O(nlogm)

(D) O(m 2 + n 2 )

答案: (A)
解释:
O(m + n),因为我们可以先对两棵树执行有序操作,然后将它们存储在两个单独的数组中。现在我们有了两个排序的序列,我们可以使用标准合并算法将它们合并为O(m + n),并且在最终的排序数组上,我们可以使用二元搜索通过递归创建树。在根上递归添加中间元素,并对左右子数组重复相同的过程。这个问题的测验