我有五个阵列,其中我存储传入INT号码,如:的Java查找元素阵列
int array1 = {1,6,..}
int array2 = {2,7,..}
.
.
int array5 = {5,10,..}
现在,我必须做的,搜索在另一个数组未来数字。
一样,
for(i = 0, i < array1.size ; i++){
int element = array1[0] ;
//here array2, array3, ..., array5 can have different size
search for array2 to find element+1
search for array3 to find element+2
.
.
search for array5 to find element+5
}
我在做什么现在的问题是:
Run for loop for 0 to array2 size, to find element+1 (so for others)
然而,这是相当缓慢。任何人都可以给我一些想法,如何使它更快(我也可以将数组更改为任何其他数据结构)。
对不起,我让两个错误一边问,我应该提什么:
1) Arrays are sorted (incremental elements always).
2) Array elements are very few (2-3) so Binary Search will be expensive.
3) I have to perform the search for thousand times means when channel input pause, I have to perform search, then again channel start and I have to perform search ... so on.
你的数字是否总是增加一个固定的数量(在给定的例子中是5)? – 2012-04-17 15:45:56
在for循环中使用'for(int i = 0,...)',否则请注意您的'i'变量可以在您的方法的其他地方更改。 – Ozzy 2012-04-17 15:47:49
@Ozzy,不,我那样做。我的代码o/P是正确的。没有问题。我想要更快一个。 – Arpssss 2012-04-17 15:48:59