下面程序段的时间复杂度为多少?

void mergesort(int i,int j)
{
int m;
if(i!=j)
{ m=(i+j)/2;
mergesort(i,m);
mergesort(m+1,j);
merge(i,j,m);
}

}
mergesort()用于数组a[n]的归并排序,调用方式为mergesort(0,n-1);merge()用于两个有序子序列的合并,是非递归函数,时间复杂度为O(n).请哪位大虾指点一下,帮小弟我讲解一下详细步骤。多谢了!

用:i=2 j=2 代入表达式中。
在中间设置一个断点。每计算一次。写出你的结果。你看看这个数组有多麻烦。用在哪里,我也不明。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-09-11
把分给我交个朋友