array Dinamika morfisologi adalah struktur data yang secara otomatis mengubah ukuran ketika mereka mencapai kapasitas. pemahaman biaya amortisasi mereka membantu mengevaluasi efisiensi mereka atas operasi multiple.

Apa itu Biaya Amortis?

Biaya amortisasi yang dikeluarkan adalah rata-rata biaya per operasi selama urutan operasi. biaya yang dikeluarkan untuk beberapa saat dengan menyebarkannya ke banyak operasi yang tidak mahal.

Operasi Array Dinamik Dinamika

Operasi umum pada array dinamis termasuk penyisipan, penghapusan, dan penipisan ulang. Pemasukan di akhir biasanya adalah operasi yang paling sering, yang mungkin memicu penangkaran ulang ketika kapasitas dilampaui.

Mengira - Mengira Biaya yang Digiring

Bila memasukkan unsur, susunannya berlipat ganda dalam ukuran ketika penuh. Biaya untuk melakukan resize melibatkan menyalin semua elemen yang ada ke array baru. Meskipun penangkaran ulang adalah mahal, hal itu terjadi secara tidak teratur.

Misalnya, jika sebuah array dimulai dengan kapasitas 1, urutan biaya untuk mengubah ukuran kembali atas beberapa penyisipan dapat dirangkum sebagai:

  • Unsur: biaya 1
  • Unsur ke-2 sisihan: resize (hasil 1), total biaya 2
  • Andikalet memasukkan unsur ke-3: resize (cost 2), total biaya 3
  • Unsur ke-4 sisipan: resize (biaya 4), total biaya 4

Total biaya atas penyisipan n secara proporsional hingga 2n, membuat biaya amortisasi per penyisipan kira-kira O(1).