Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:想要数组子集的二进制搜索吗_Java_Binary Search - Fatal编程技术网

Java:想要数组子集的二进制搜索吗

Java:想要数组子集的二进制搜索吗,java,binary-search,Java,Binary Search,在Java中,Arrays.binarySearch始终搜索整个数组。有时数组的一部分尚未填充。是否有任何函数可以搜索数组的一部分,例如 int binarySearch(int[] a, int end, int value) 是的,我可以只使用TreeMap,但我有很多这样的工具,TreeMap使用的内存是int[]的几倍 是的,我当然可以写一个二进制搜索,但是考虑到数组的存在。binarySearch似乎我不应该写我自己的。有一个重载函数正是这样做的: public static int

在Java中,Arrays.binarySearch始终搜索整个数组。有时数组的一部分尚未填充。是否有任何函数可以搜索数组的一部分,例如

int binarySearch(int[] a, int end, int value)
是的,我可以只使用
TreeMap
,但我有很多这样的工具,
TreeMap
使用的内存是int[]的几倍

是的,我当然可以写一个二进制搜索,但是考虑到数组的存在。binarySearch似乎我不应该写我自己的。有一个重载函数正是这样做的:

public static int binarySearch(int[] a,
                               int fromIndex,
                               int toIndex,
                               int key)

它在Java 1.6+中提供。

Oh Duuuuuuuuuuuuuuuuuuh!出于某种原因,谷歌“javax”总是先显示旧文档。现在我觉得这样问很傻。如果我能否决我自己的问题,我会的。@kevincline:你对谷歌和旧Java文档的看法是对的。我通常搜索
java6
java7
,例如
数组java6