《王道》数据结构中的一个问题,求逆算法,圈起来的中左不好理解,为什么要减左,感觉直?

因为你的程序是递归的,所以会分两边。

如果在最左边。那么左为0是没有问题的,

但是在右边,其实你的号只是左中。不是中期。

那么程序必须被编写

我?& lt=?mid?-?左边的

//因为mid指的是一个区间的中间数,而这个区间的实际元素数应该是

//(mid?-?左)*2

//根据算法,我们可以理解为,我们需要处理的是当前区间的前半段。

//那么自然地从我?=?0?-& gt;?我?& lt=?mid?-?左,仔细想想,看能不能理解。

我随意画了一张草图。

如果你继续画,你可以清楚地看到战斗。。它一定在中间偏左。