Possible Duplicate:
Searching a number in a rotated sorted Array
假设原始列表是 1 2 3 4 5 6 7 8 9 10
然后你将其移动,使其变为
5 6 7 8 9 10 1 2 3 4
所以说我想检查 7 是否在数组中。我如何有效地做到这一点。
最佳答案
使用三元搜索。它的工作原理与二分查找类似(也是对数时间),但是当序列形状像楔形 (/) 或 V 形 (/) 时,您可以找到元素。
关于algorithm - 在已排序的数组中查找已移位的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2961679/