Array dalam Struktur Data – Penjelasan, Fungsi & Contoh
Diterbitkan: 2021-06-21Struktur data telah terbukti menjadi bagian penting dari hampir semua bahasa pemrograman yang telah diterapkan secara luas ke sebagian besar program komputer. Melalui struktur data itulah data dapat dikelola dan diakses secara efektif oleh program karena mengakses dan menyimpan data tunggal secara terpisah merupakan proses yang memakan waktu. Algoritma dirancang khusus untuk membuat operasi spesifik yang diperlukan dalam struktur data. Oleh karena itu, struktur data dan algoritma bersama-sama meletakkan dasar dari aplikasi dan program yang kompleks.
Pada artikel ini, kita akan fokus pada jenis struktur data, yaitu Array.
Array adalah jenis struktur data di mana elemen atau data disimpan di lokasi yang berdekatan. Setiap kali pengguna memiliki kumpulan data dengan tipe data yang sama, struktur data array adalah opsi untuk mengatur data tersebut. Ukuran array tergantung pada ukuran data. Sebelum elemen disimpan dalam array, ukuran array harus ditentukan sehingga menggabungkan semua elemen secara efektif. Setiap elemen yang disimpan dalam array memiliki nilai indeks yang ditetapkan untuk itu yang membantu dalam mengidentifikasi lokasi elemen tersebut dalam array. Elemen pertama dari array memiliki nilai indeks nol.
Istilah penting yang terkait dengan struktur data array adalah:
- Element : Element mewakili setiap objek atau item yang disimpan dalam struktur data.
- Indeks : Indeks mewakili lokasi elemen dalam array. Ini memiliki nilai numerik.
Ukuran array berubah dengan bahasa pemrograman yang berbeda. Berdasarkan ukurannya, array dapat terdiri dari dua jenis: array statis dan array dinamis.
Daftar isi
1. Array statis:
Jenis array ini memiliki ukurannya yang telah ditentukan sebelumnya selama pembuatannya. Karena itu, array statis juga dikenal sebagai array tetap atau array dengan panjang tetap. Array dapat didefinisikan dalam dua cara. Elemen array dapat ditentukan saat membuat array atau ukuran array dapat ditentukan saat membuat array. Dalam kasus terakhir, elemen tidak perlu ditentukan. Nilai default dapat dialokasikan ke array yang tidak diinisialisasi atau nilai yang tersisa di memori dari alokasi sebelumnya.
Array tidak dapat menyusut atau meluas setelah ukurannya ditentukan. Karena memori dialokasikan selama deklarasi array, hanya kompiler yang dapat menghancurkan array. Penambahan elemen tidak dimungkinkan karena pengguna tidak yakin apakah ada memori kosong yang akan dialokasikan ke elemen berikutnya.
Tabel di bawah ini menunjukkan contoh array yang digunakan dalam berbagai bahasa pemrograman.
Bahasa pemrograman | Isi array yang ditentukan | Ukuran array yang ditentukan tanpa konten |
C++ | int tanda[] = {10, 20, 30}; | tanda int[3]; |
C# | int[] tanda = {10, 20, 30}; | int[] tanda = = new int[3]; |
Jawa | int[] tanda = {10, 20, 30}; | int[] tanda = = new int[3]; |
JavaScript | tanda var = [10, 20, 30]; | var mark = new Array(3); |
Python | tanda = [10, 20, 30] | tanda = [Tidak ada] * 3 |
Cepat | nilai var:[Int] = [10, 20, 30] | tanda var: [Int] = [Int](berulang: 0, hitung: 3) |
2. Array Dinamis
Seperti namanya, array bersifat dinamis yang berarti bahwa elemen dapat ditambahkan atau dihapus selama waktu berjalan. Dibandingkan dengan larik statis yang panjangnya tetap, larik dinamis tidak memiliki panjang atau ukuran larik yang tetap. Fungsi pustaka standar atau fungsi bawaan tersedia di sebagian besar bahasa pemrograman untuk membuat dan mengelola larik dinamis.
Tabel di bawah ini menunjukkan pembuatan array dalam bahasa pemrograman yang berbeda
Bahasa pemrograman | Kelas | Penambahan elemen | Penghapusan elemen |
C++ | #sertakan <daftar> std::daftar | memasukkan | menghapus |
C# | System.Collections.Generic.List | Menambahkan | Menghapus |
Jawa | java.util.ArrayList | Menambahkan | menghapus |
JavaScript | Himpunan | dorong, sambatan | pop, sambatan |
Python | Daftar | menambahkan | menghapus |
Cepat | Himpunan | menambahkan | menghapus |
Representasi array
Representasi array bervariasi sesuai dengan implementasinya dalam bahasa pemrograman yang berbeda. Array menjadi bagian penting dari struktur data python , sebuah ilustrasi telah ditampilkan dalam bahasa pemrograman python.
Dalam array struktur data python ditangani melalui array kata kunci . Setiap kali array kata kunci digunakan, pengguna harus menyimpan elemen dengan tipe data yang sama.
Sumber
Gambar 1: Contoh array
Sesuai Gambar 1, ilustrasi array menunjukkan bahwa
- Ukuran array adalah 10 yang berarti 9 elemen dapat disimpan dalam array.
- Nilai indeks telah disebutkan di atas array yang dimulai dengan nilai 0.
- Elemen yang disimpan dalam array dapat berupa tipe data apa pun, dan elemen tersebut dapat diakses melalui nilai indeksnya.
Ilustrasi lain telah ditunjukkan pada Gambar 2, di mana sintaks python dan C++ telah dijelaskan.
Sumber
Gambar 2 : Deklarasi array menggunakan python dan C++ (
Sifat-sifat Array
Struktur data array memiliki beberapa properti:
- Elemen yang disimpan dalam array memiliki tipe data yang sama dan ukuran yang sama, yaitu tipe data int akan memiliki ukuran 4 byte.
- Lokasi memori yang berdekatan digunakan untuk menyimpan elemen struktur data. Memori terkecil dialokasikan ke elemen pertama dalam array.
- Nilai indeks digunakan untuk menemukan lokasi elemen dalam array. Indeks dimulai dengan 0 dan selalu kurang dari jumlah total elemen dalam array.
- Akses acak elemen dalam array dimungkinkan karena nilai indeks yang tersedia. Alamat elemen dapat dihitung melalui alamat dasar yang ditambahkan ke nilai offset.
- Konsep array tetap sama di semua bahasa pemrograman. Hanya inisialisasi dan deklarasi yang berbeda.
- Nama array, elemen, dan tipe data adalah tiga bagian yang akan umum di semua bahasa.
Membuat array
Pembuatan array dalam struktur data python telah ditunjukkan di bawah ini.
- Modul array dalam struktur data python dapat diimpor untuk membuat array.
- array(data_type, value_list ) adalah sintaks di mana array dapat dibuat dalam struktur data python .
- Tipe data harus bilangan bulat nyata atau float. String tidak diperbolehkan dalam python.
Gambar 2 menunjukkan cara membuat array dengan python. Contoh kode untuk menunjukkan bagaimana modul array diimpor dengan python
impor larik
tanda = array.array('i', [100.200.300])
cetak (tanda)
Deklarasi array dapat dilakukan melalui
arrayName = array.array(ketik kode untuk tipe data, [array,item])
Ini dapat direpresentasikan pada Gambar 3
Sumber
Gambar 3: Deklarasi array dengan python
Istilah penting yang digunakan dalam membuat array:
- Identifier: Nama yang harus ditentukan seperti nama untuk variabel
- Modul: modul khusus yang disebut array harus diimpor dengan python.
- Metode: Ini adalah metode khusus untuk menginisialisasi array dengan python. Dua argumen dimakan, kode ketik, dan elemen.
- Kode Tipe: Tipe data harus ditentukan dengan kode tipe yang tersedia.
- Elemen: Elemen larik harus ditentukan dalam tanda kurung siku, misalnya [200.400.100.]
Kode jenis yang tersedia ditunjukkan di bawah ini
Operasi Array
Dengan tersedianya struktur data dan algoritma, beberapa operasi dapat dilakukan di semua jenis struktur data. Struktur data array dapat memiliki operasi seperti penambahan, penghapusan, aksesi, dan pembaruan elemen.
Operasi yang dapat dilakukan dalam array struktur data python tercantum di bawah ini.
1. Penambahan elemen ke array
- Fungsi insert() bawaan digunakan untuk menambahkan elemen ke array.
- Sintaks yang digunakan : arrayName.insert(index, value)
- Salah satu atau lebih dari satu elemen dapat ditambahkan ke array melalui fungsi insert().
- Elemen dapat ditambahkan ke awal array atau pada posisi tertentu menggunakan fungsi Input: append().
impor larik
tanda = array.array('i', [200.500.600])
tanda.insert(1, 150)
Keluaran: array('i', [200.150.500.600])
Contoh dengan kode ditunjukkan di bawah ini diambil dari
Keluaran kode:
Sumber
2. Penghapusan elemen dalam array
- Sebuah elemen dapat dihapus dari array melalui nilainya.
- Sintaks yang digunakan: arrayName.remove(nilai)
- Contoh: menghapus nilai 250 setelah penambahannya dalam array yang memiliki elemen 100, 300, 200, 500, dan 800.
Memasukkan:
impor larik
tanda = array.array('i', [100.300.200.500.800])
tanda.insert(1, 250)
cetak (tanda)
tanda.hapus(250)
Keluaran: array('i', [100.300.200.500.800])
Contoh kode yang diambil dari
Sumber
Keluaran kode:
3. Mengakses elemen dalam array
- operator indeks [ ] digunakan untuk mengakses elemen dalam array.
- Nomor indeks digunakan untuk mengakses setiap elemen dalam array .
Contoh kode yang ditunjukkan di bawah ini diambil dari
Keluaran kode:
Sumber
4. Mencari elemen dalam array.
- Metode index() bawaan digunakan untuk mencari elemen dalam array.
- Nilai indeks dari elemen yang akan dicari dikembalikan oleh fungsi.
- Contoh: mencari elemen 250 dalam larik elemen 100, 250, 300, 200, 500, dan 800.
Masukan: impor array
tanda = array.array('Saya', [100.250.300.200.500.800])
print(marks.index(250))
Keluaran: 1
Kode untuk mencari elemen dalam array
Keluaran kodenya adalah
Sumber
3. Memperbarui elemen dalam array
- Proses memperbarui elemen mirip dengan metode penyisipan dengan satu-satunya perbedaan bahwa saat memperbarui nilai yang ada akan diganti pada indeks yang diberikan.
- Nilai baru ditugaskan kembali ke indeks untuk memperbarui elemen dalam array.
- Contoh: Memperbarui elemen 250 dengan 350 dalam larik elemen 100, 250, 300, 200, 500, dan 800.
Masukan: impor array
tanda = array.array('i', [100.250.300.200.500.800])
tanda[1] = 350
Keluaran:
array('i', [100.350.300.200.500.800])
Kode yang menunjukkan pembaruan elemen ditunjukkan di bawah ini
Keluaran kodenya adalah
Sumber
Keuntungan dari array
- Penyimpanan beberapa nilai dalam satu variabel dimungkinkan alih-alih membuat variabel terpisah untuk setiap elemen.
- Beberapa nilai dapat diproses dengan mudah dan cepat dengan menggunakan array.
- Elemen array dapat diurutkan dan dicari dengan cara yang lebih cepat.
Kesimpulan
Artikel tersebut membahas tipe khusus dari struktur data yaitu array dan operasi terkaitnya. Dengan konsep dasar, program yang lebih kompleks dapat dibangun dengan menargetkan masalah kehidupan nyata. Jika Anda ingin memperkuat fondasi konsep struktur data Anda dengan python, Anda dapat merujuk ke kursus Program PG Eksekutif berikut dalam Ilmu Data oleh upGrad. Kursus ini disertifikasi oleh IIIT-Bangalore dan memiliki lebih dari 14+ alat dan bahasa pemrograman untuk mempersiapkan perjalanan Anda menuju industri ini. Ini dirancang khusus untuk para profesional tingkat pemula dalam kelompok usia 21 hingga 45 tahun. Jadi, jangan berhenti belajar di sini, dan pelajari bahasa dan aplikasinya di dunia pembelajaran mesin melalui kursus upGrad. Jika Anda memiliki pertanyaan, tim bantuan kami akan siap membantu Anda.
Array adalah struktur data linier yang kuat. Namun, ia memiliki beberapa kelebihan serta kekurangan yang disebutkan di bawah ini: Berikut ini mengilustrasikan perbedaan antara array dan daftar. Struktur data array memiliki banyak aplikasi dalam kehidupan nyata dan juga digunakan sebagai dasar untuk mengimplementasikan struktur data yang ditentukan pengguna lainnya. Beberapa aplikasi utama dari array adalah sebagai berikut:Apa kelebihan dan kekurangan array?
Keuntungan
1. Dalam sebuah array, elemen dapat diakses dengan mudah berdasarkan nomor indeksnya.
2. Array dapat digunakan untuk menyimpan beberapa entitas serupa.
3. Operasi pencarian cukup nyaman. Itu dapat dilakukan dalam waktu O(n) dan O(log n) dalam array yang diurutkan, di mana n adalah jumlah elemen.
Kekurangan
1. Karena memori dialokasikan secara statis dalam array, ukuran array tidak dapat diubah.
2. Homogen yaitu, hanya elemen yang memiliki tipe data yang sama yang dapat disimpan dalam array. Bedakan antara array dan daftar?
Himpunan -
1. Struktur data array adalah homogen, yaitu hanya elemen dengan tipe data yang sama yang dapat disimpan dalam array.
2. Modul perlu diimpor sebelum menggunakan array.
3. Operasi aritmatika dapat diterapkan secara langsung.
4. Lebih disukai untuk data yang lebih besar.
4. Jauh lebih ringkas dan menghabiskan lebih sedikit memori.
Daftar -
1. Daftarnya heterogen dan dapat menyimpan elemen dari beberapa tipe data di dalamnya.
2. Tidak perlu mengimpor modul karena sudah ada di dalam Python.
3. Operasi aritmatika tidak dapat dioperasikan secara langsung.
4. Lebih disukai untuk data yang lebih kecil.
5. Konsumsi memori lebih banyak. Jelaskan aplikasi utama dari array?
1. Array digunakan untuk mengimplementasikan dan melakukan operasi matriks. Matriks sebagian besar digunakan dalam survei geologi dan eksperimen sains & penelitian.
2. Beberapa struktur data yang ditentukan pengguna diimplementasikan menggunakan struktur data array. Ini termasuk tumpukan, antrian, tumpukan, tabel hash, dan daftar.
3. Program menggunakan array untuk mengatur aliran kontrol daripada menggunakan pernyataan elif tradisional, yang relatif panjang.
4. Algoritma yang ditulis untuk proses penjadwalan CPU juga menggunakan struktur data array untuk meningkatkan kinerja CPU.
5. Graphs menggunakan adjacency list sebagai salah satu implementasinya. Vektor (aplikasi array) digunakan untuk membuat daftar kedekatan ini.