一直在学习分而治之,我正在努力理解一个概念。如果我们有一个排序数组并想做一些任务......我们得到公式
T(n) = a (n/b) * O(n)
如果我们使用b = 2
(二叉树) ,这意味着每个子数组又被分成两个子数组......我们得到
T(n) = 2 (n/2) * O(n)
--> 并通过主规则running time = O(n * logn)
现在如果我们使用b = 3
(tri-nary tree) ,这意味着每个子数组都被分成三个子数组,我们得到
T(n) = 3 (n/3) * O(n)
--> 这意味着running time = O(n * logn)
问题:
如果我们进行更多拆分,运行时间是否应该更长?
为什么不管我的树有多大,我的运行时间都一样?