我试着在这里研究,一般在互联网上,但由于伪代码写作相当多样化,许多人使用不同的符号来表达不同的东西,我找不到任何可能适合我的问题.
给定以下内容:序列n的数组A(不一定已经排序),索引p,r使得1 <= p <= r <= n;
我得到了以下递归算法(伪代码),我想知道它中的具体两行(粗体)是什么意思:
MAXB(A,P,R)
如果p = r
然后返回A [p]
其他温度<----- MAXB(A,p,r-1)
如果temp> = A [r]
然后回温
否则返回A [r]
我并不完全理解使用'temp'完成的过程.如果它改变MAXB(A,p,r)成MAXB(A,p,r-1)如何与它的价值进行比较A[r]?我知道算法肯定不会做它应该做的事情,根据描述:返回具有最高值的项目的索引,之间A[p]和A[r]- 当然不会那样做,但我不知道怎么能温度甚至可以与任何值进行比较.