📜  门| GATE-IT-2004 |第 58 题

📅  最后修改于: 2021-09-25 04:49:33             🧑  作者: Mango

考虑如下所示的递归算法列表和递归关系列表。每个递推关系对应一个算法,用于推导算法的时间复杂度。

Recursive Algorithm Recurrence Relation
P. Binary search I. T(n) = T(n-k) + T(k) + cn
Q. Merge sort II. T(n) = 2T(n-1) + 1
R. Quick sort III. T(n) = 2T(n/2) + cn
S. Tower of Hanoi IV. T(n) = T(n/2) + 1

(A) P-II、Q-III、R-IV、SI
(B) P-IV、Q-III、RI、S-II
(C) P-III、Q-II、R-IV、SI
(D) P-IV、Q-II、RI、S-III答案:(乙)
说明:这些是一些标准算法的例子,它们的
归并排序:T(n) = 2T(n/2) + Θ(n)。它属于情况 2,因为 c 是 1 并且 Log b a] 也是 1 并且解决方案是 Θ(n Logn) //时间复杂度可以使用 Master Method 进行评估

二分搜索:T(n) = T(n/2) + Θ(1)。它也属于情况 2,因为 c 为 0,Log b a 也为 0,解为 Θ(Logn) //时间复杂度可以使用 Master Method 进行评估

快速排序:快速排序所花费的时间一般可以写为 T(n) = T(k) + T(nk-1) + \theta (n)

河内塔:T(n) = 2T(n-1) + 1

阅读更多信息:http://www.geeksforgeeks.org/analysis-algorithm-set-4-master-method-solving-recurrences/
这个问题的测验