我编写的伪代码在k个旋转排序的数组中找到第k个数字。一个
k rotate-sorted array是A[k]<A[K+1]<...<A[1]<...<A[N]<...<A[K-1]
的数组。
所以在这个数组中:
[3,4,5,6,7,1,2]
k=5
我很难证明为什么我的代码是正确的
find_k'th :
start=A[1]
end = A[n]
while ( A[start]>A[end])
start=A[floor(start+end)/2]
return start;