Is this any faster then using traditional way ie looping from index 0 -- to -- > lastIndex
//i --> element from left
//lastIndex -i --> element from right
int ArraySum =0;
int lastIndex = A.length-1;
for(int i = 0; i <= lastIndex/2; i++){
if(i == lastIndex-i){
//it means its the same element
ArraySum += A[i];
break;
}
// else we have element from left and element from right
ArraySum += A[i] + A[lastIndex-i];
}
test the code & compare the result on http://www.geeksforgeeks.org/program-find-sum-elements-given-array/
class Test
{
public static void main(String[] args)
{
int A[] = {3,4,5,10,2};
int ArraySum =0;
int lastIndex = A.length-1;
for(int i = 0; i <= lastIndex/2; i++){
if(i == lastIndex-i){
ArraySum += A[i];
break;
}
ArraySum += A[i] + A[lastIndex-i];
}
System.out.println("Sum of given array is " +ArraySum);
}
}