Menu
CoddyTech

Jumlah kumulatif subarray

Pelajaran 25 dari 26 dalam kursus Array di C++ di Coddy.

Array jumlah kumulatif adalah array yang berisi semua jumlah elemen array hingga indeks tersebut.

Sebagai contoh, 

Arr={1,2,3,4}

untuk i=0 jumlah kumulatifnya adalah 1

untuk i=1 jumlah kumulatifnya adalah 1+2=3

untuk i=2 jumlah kumulatifnya adalah 1+2+3=6

untuk i=3 jumlah kumulatifnya adalah 1+2+3+4=10

Jadi, array kumulatifnya menjadi {1,3,6,10}

Salah satu cara menghitungnya adalah dengan menggunakan dua perulangan bersarang, lalu menghitung jumlah dan menyimpannya dalam array. Seperti ini:

int k=0;                           

while(k<n){
  int sum=0;
  for(int j=0;j<k+1;j++){
    sum=sum+arr[j];
    
  }
  ans[k]=sum;
  k++;
}

Cara lainnya dan yang paling efisien untuk menghitung array kumulatif adalah dengan menambahkan elemen saat ini ke jumlah sebelumnya.

Arr={1,2,3,4}

cumArr[] adalah array kumulatif.

  1. cumArr[0]=1
  2. cumArr[1]=jumlah sebelumnya+Arr[1] = 1 + 2 = 3
  3. cumArr[2]=jumlah sebelumnya+Arr[2] = 3 + 3 = 6
  4. cumArr[3]=jumlah sebelumnya+Arr[1] = 6 + 4= 10

 

Ini dapat dilakukan seperti berikut:

int sum=0;
for(int i=0;i<n;i++){
  sum=sum+arr[i];
  ans[i]=sum;
}

Teka-teki

Menurutmu, berapa kompleksitas waktu dari kedua pendekatan ini? 

Coba sendiri

Pelajaran ini tidak memiliki tantangan kode.

Semua pelajaran di Array di C++

Latihan sendiri: Compiler C++ online