算法作业
public class Solution {
public int test (int[] nums)
{
int leftsum = 0;
int rightsum = 0;
for (int i : nums) //遍历数组,将和加给左侧值
leftsum += nums[i];
for (int j = 0;j < nums.length; j++)
{
leftsum -= nums[j]; //减去当前元素下标
if (leftsum == rightsum) //判断左侧值是否等于右侧值
return j;
else
rightsum += nums[j]; //不是就继续减左侧值,加给右侧值
}
return -1; //不存在中心下标
}
}
public class Main {
public static void main(String[] args) {
int[] arr1 = new int[]{1,7,3,6,5,6};
int[] arr2 = new int[]{1,2,3};
int[] arr3 = new int[]{2,1,-1};
Solution solution = new Solution();
System.out.println(solution.test(arr1));
System.out.println(solution.test(arr2));
System.out.println(solution.test(arr3));
}
}