级别总和相同时的递归树

时间:2019-01-26 08:54:22

标签: algorithm recursion big-o recurrence

我一直在尝试使用递归树方法解决问题,通常我们可以找到级别总和并获得GP,然后我们可以应用无限的GP总和,从而获得最终的Big-O值。

对于具有相同级别和的案件,例如-

,我们该怎么办?

T(n)= 3T(n / 3)+ cn

以下答案是Theta(nlogn)

1 个答案:

答案 0 :(得分:0)

首先,让T(1)= 1,n = 3 ^ k,c = 1:

// "s" is a string variable containing "HARSHIT"
String result = s.chars().mapToObj(x -> Character.toString((char)x))
        .map(x -> Integer.toString(hm.get(x)))
        .collect(Collectors.joining());

您能从这里通过归纳证明吗?

@编辑

考虑以下树扩展:

Integer.valueOf

每行总计n。如果假设n = 3 ^ k,则树是平衡的,并且树的高度为k = log3n,因此复杂度为Theta(n * log3n)。