2012-04-09 58 views
0

我已经提取了对象数组中的一个表的内容。该对象将表COUNTRYCODES的列保存到它自己的数据成员中,其名称分别为startingRange,endingRange和countryCode。如何在java中的对象数组中应用二进制搜索?

实际上表格描述的是与表格的startingRange和endingRange范围对应的国家代码。现在我已经将这个表存储在一个名为countryCodes []的对象数组中。我需要通过给出一个范围在任何范围之间(即在任何startingRange和endingRange之间)来搜索数组中的国家代码。

为此,我想使用二分查找,因为我不想按位置搜索国家代码位置。为了尽量减少搜索工作,我想使用二分查找。 请帮助引导我。

谢谢。

+0

什么是countryCodes,startingRange,endingRange?他们的数据类型是什么? – st0le 2012-04-09 06:15:33

+0

您是否想过使用db查询来检索国家代码等于您的搜索的元素?通过将您的查询与您的搜索进行合并,可能会提高它的效率。 – 2012-04-09 06:18:34

回答

1

你的问题有点含糊,但你可以做的是:

假设数组已经排序,您可以使用Arrays.binarySearch机制来执行你的阵列上的二进制搜索。