平衡点就是指数组中某一个节点的前面的所有元素的和等于后面节点所有元素的和。
Java算法实现:
public boolean isTrue(int nums[]) {
int n = nums.length - 1;
boolean flag = false;
for (int i = 1; i <= n; i++) {
nums[i] += nums[i - 1];
}
for (int j = 1; j <= n; j++) {
if (j == 1 && (nums[n] - nums[0] == 0)) {//判断第一个是否为平衡点
flag = true;
System.out.println("第一个");
} else if (j == n && (nums[n - 1] == 0)) {
flag = true;
System.out.println("最后一个");
} else if (nums[j - 1] == nums[n] - nums[j]) {
flag = true;
System.out.println("一般的一个");
}
}
return flag;
}