Skip to main content

Apa itu Daftar Array?

Daftar array dalam pemrograman komputer adalah struktur data yang berperilaku seperti array komputer tetapi juga mengimplementasikan kemampuan untuk secara dinamis menumbuhkan ukuran array sesuai kebutuhan.Tidak seperti tipe data array intrinsik, yang tidak dapat diubah ukurannya selama eksekusi program, struktur arraylist dapat tumbuh dan mengecilkan ukuran array sebagai respons terhadap penambahan atau penghapusan elemen.Ini memiliki profil kinerja yang sangat menguntungkan, memungkinkan akses acak cepat ke pengumpulan data.Namun, ada dua contoh di mana ia lebih lambat dari beberapa struktur data lainnya, yaitu penambahan dan penghapusan elemen dari tengah array.Sebagian besar bahasa pemrograman yang berorientasi objek memiliki beberapa jenis implementasi daftar seperti itu, meskipun kadang-kadang disebut array dinamis.

Menggunakan arraylist menyediakan program dengan kemampuan untuk mengakses objek data dengan nomor indeks secara instan alih-alih harus berjalan melaluiSeluruh urutan data untuk menemukan alamat, yang diperlukan dengan daftar tertaut.Dengan kemampuan untuk meningkatkan ukuran array sesuai kebutuhan, ini adalah pendekatan yang sangat seimbang yang mempertimbangkan fleksibilitas dan kecepatan.Selain itu, ketika elemen dihapus dari daftar seperti itu, ukuran array dikurangi, membebaskan ruang memori.

Salah satu manfaat dari menggunakan daftar array atas beberapa struktur data lainnya adalah bahwa objek pembungkus tidak diperlukan untuk berisi data yang ada pada datadisimpan.Dalam hal daftar yang ditautkan atau tabel hash, objek terpisah biasanya diperlukan untuk mempertahankan teknik yang digunakan untuk memegang dan memanipulasi koleksi.Dengan daftar array, satu -satunya informasi yang diperlukan tentang objek data adalah alamat objek dalam memori.Ini berarti akan ada lebih sedikit penggunaan memori overhead saat bekerja dengan daftar jenis ini.

Masalah potensial dengan menggunakan daftar array dapat berasal dari sistem implementasi dan manajemen memori.Sebagian besar array dialokasikan sebagai lokasi memori berturut -turut.Jadi, untuk menggunakan daftar array dengan ukuran tertentu, setidaknya memori sebanyak itu harus tersedia dalam urutan blok yang tidak terputus.Array dinamis dapat mengubah ukurannya beberapa kali, sehingga fragmentasi memori dapat terjadi dan menyebabkan kegagalan alokasi memori, menghentikan eksekusi program.

Kinerja arraylist mirip dengan menggunakan array standar, meskipun waktu akses sedikit lebih lambat karenaArray dienkapsulasi dalam suatu objek.Salah satu contoh di mana array dinamis dapat melambat secara dramatis, tergantung pada implementasi, adalah ketika ukuran array perlu diubah.Ini dapat melibatkan penyalinan array saat ini ke array baru yang dialokasikan untuk ukuran baru yang diinginkan, menyebabkan degradasi sementara dalam kinerja.Masalah yang sama dapat dialami saat menambahkan atau menghapus elemen dari tengah daftar, menyebabkan semua elemen berikut harus dipindahkan ke lokasi baru.