我有 int 值的数组
int[] myArr = (int[]) alItems.ToArray(typeof (int));
index = Array.BinarySearch(myArr, searchNumber);
当我在 myArr 中有 searchNumber 时,它给了我负索引,为什么?
我有 int 值的数组
int[] myArr = (int[]) alItems.ToArray(typeof (int));
index = Array.BinarySearch(myArr, searchNumber);
当我在 myArr 中有 searchNumber 时,它给了我负索引,为什么?
如果二分查找返回 -1,则该值不在数组中。如果数组未排序(二进制搜索需要这样做),也会发生这种情况。
在使用二分搜索之前,您应该了解它是如何工作的。在将其放入代码之前,请花一些时间进行一些研究。