考虑到我有一个排序数字数组,偏移量为 0 到 N-1,其中 N 是数组的长度。完全排序的数组的零偏移量为 0,如下所示
[1, 2, 4, 11, 15, 19, 26]
数组[19, 26, 1, 2, 4, 11, 15]
的偏移量为 2,因为较小的数字从第二个索引开始并环绕到第一个。
分配问题是如何在数组中找到数字的索引。对于排序数组,解决方案显然是通过二进制搜索来查找索引(有或没有递归)。
如何在具有偏移量的数组中找到数字的索引?偏移量未知。我想要一个解决方案的大纲,我会尝试用我熟悉的语言来实现它。