o(n2)和o(n)
//時間複雜度是n
static void equPoint2(){
int[] arr = {2,3,4,5,8,5,9};
int leftSum = arr[0];
int rightSum = 0;
for (int i : arr) {
rightSum+=i;
}
for (int i =1; i < arr.length; i++) {
leftSum+=arr[i-1];
rightSum-=arr[i];
if(leftSum==rightSum){
System.out.println(arr[i]);
}
}
}
//時間複雜度是n2
static void equPoint1(){
int[] arr = {2,3,4,5,8,5,9};
for (int i = 0; i < arr.length; i++) {
//計算每個數字的前後和
if(isOk(arr, i)){
System.out.println(arr[i]);
}
}
}
static boolean isOk(int[] arr,int position){
int leftSum = 0 ;
int rightSum = 0 ;
for (int i = 0; i <position; i++) {
leftSum+=arr[i];
}
for(int i = position+1;i<arr.length;i++){
rightSum +=arr[i];
}
return leftSum==rightSum;
}