Java Program to Find middle index of array where both ends sum is equal.
Solution:- To get solution of the program we need to sum the element from both side. and compar them.
So i am going to start sum of elements from left side and sum of element from right side.
Solution:- To get solution of the program we need to sum the element from both side. and compar them.
So i am going to start sum of elements from left side and sum of element from right side.
package example;
public class FindMiddleIndex {
public static int findMiddleIndex(int[] numbers) throws Exception {
int endIndex = numbers.length - 1;
int startIndex = 0;
int sumOfLeft = 0;
int sumOfRight = 0;
while (true) {
if (sumOfLeft > sumOfRight) {
sumOfRight += numbers[endIndex--];
} else {
sumOfLeft += numbers[startIndex++];
}
if (startIndex > endIndex) {
if (sumOfLeft == sumOfRight) {
break;
} else {
throw new Exception("Please pass valid array to match the requirement");
}
}
}
return endIndex;
}
public static void main(String a[]) {
int[] num = { 1, 3, 6, 6, 3, 1 };
try {
System.out.println(
"Sum of left element at index " + findMiddleIndex(num) + " is equal to sum of right element.");
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
Output:
Sum of left element at index 2 is equal to sum of right element.
No comments:
Post a Comment