每次少遍历一次数组

时间:2019-12-10 23:50:25

标签: matlab

假设我有一个[1,2,3,4,5]

数组

我想在每次添加数组时尝试少遍历数组。

第一次:

1+2+3+4+5 = 15

第二次:

2+3+4+5 = 14

第三次:

3+4+5 = 12

第四次:

4+5 = 9

第五次:

5 = 5

任何帮助将不胜感激! 非常感谢。 -AbysssCoder

2 个答案:

答案 0 :(得分:2)

自从您用MATLAB标记了问题...

>> x = [1,2,3,4,5]; % define array
>> cumsum(x, 'reverse') % cumulative sum in reverse order
ans =
    15    14    12     9     5

答案 1 :(得分:-1)

int[] arr = {1, 2, 3, 4, 5};
for (int i = 0; i < arr.length; i++) {
    int sum = 0;
    for (int j = i; j < arr.length; j++) {
        sum += arr[j];
    }
    System.out.println(sum);
}

像这样吗?