搜索圆形右键中的键以log N时间复杂度移动已排序的数组

时间:2014-09-02 13:56:43

标签: arrays algorithm sorting

给定一个带有n个元素的圆形右移排序数组。 (假设转变的数量为'k',k在这里是未知的)。已要求它在 log n 时间内搜索数组中的键。

实施例

给定圆右移分选阵列:8 9 10 1 2 3 4 5 6 7

搜索键5。

请注意,算法的时间复杂度应为log n。

我的方法:使用二进制搜索会给出log n时间复杂度,但是,我们需要一个排序数组。但是一个移位的数组在移位后丢失了它的排序顺序,并在log n中再次对其进行排序。时间复杂度是我没有得到的部分。 请注意'k'在此处未知。

我们甚至可以在时间复杂度上解决这个问题吗?

在期待中感谢你。

0 个答案:

没有答案