C 如何找到无重复的n个整数的未排序数组的递归性并证明它
我试图理解下面的排序算法。这是用C语言完成的C 如何找到无重复的n个整数的未排序数组的递归性并证明它,c,algorithm,C,Algorithm,我试图理解下面的排序算法。这是用C语言完成的 sort(A, i, j): if i = j then return end if m = floor(i+j/2) sort(A, i, m) sort(A, m + 1, j) if A[m] > A[j] then swap A[m] and A[j] end if sort(A, i, j − 1) 首先,我试图编写一个递归,描述sort(a,0,n)的运行时− 1) 。还有,我应该如
sort(A, i, j):
if i = j then
return
end if
m = floor(i+j/2)
sort(A, i, m)
sort(A, m + 1, j)
if A[m] > A[j] then
swap A[m] and A[j]
end if
sort(A, i, j − 1)
首先,我试图编写一个递归,描述
sort(a,0,n)的运行时− 1)
。还有,我应该如何用归纳法证明算法是正确的?需要帮助。你能提供一些关于这方面的背景信息吗(比如,你在使用什么编程语言,你想解决什么问题?)否则,我假设你已经在这里发布了一个家庭作业问题,并要求stackoverflow为你做家庭作业,从汤到坚果。我很乐意给你们一个提示,但我不会为你们做家庭作业,其他人也不会。这个问题很有趣。循环分为两部分——d'n'c部分和线性部分。我想看看如何解决这个问题。现在我看到它不是多项式,但O(2^n)不是紧界。