Larik adalah tempat penyimpanan kumpulan data yang disusun secara sistematis dengan menempatkan setiap data pada indeks tertentu. Larik dapat berbentuk satu atau lebih dimensi, misalnya larik dua dimensi yang dikenal sebagai matriks. Ukuran larik dapat ditentukan sebelumnya atau dinamis.
2. Definisi
Larik (array) adalah sebuah tempat penyimpanan
kumpulan data atau objek yang sistematis dengan
menempatkan data pada suatu index atau kunci (key).
46 93 99 26 27 1 14 21 10 13
3. Contoh: Larik bilangan bulat (integer) dengan 10 elemen
46 93 99 26 27 1 14 21 10 13
0 1 2 3 4 5 6 7 8 9
indeks (dimulai dari 0)
Nilai dalam larik dapat didapatkan kembali dengan
mengambil berdasarkan indeksnya.
Misalkan kita ingin mengambil indeks ke-3, maka nilai
yang dikembalikan adalah 26.
4. Spesifikasi Larik
Larik berbentuk tabel kontigu dan digunakan untuk
menyimpan data yang tipenya sama.
Larik dapat memiliki lebih dari 1 dimensi. Misalkan Larik 2
dimensi / matrix.
Ukuran larik fix atau tetap sehingga perlu didefinisikan
terlebih dahulu sebelum digunakan sebagai tempat
penyimpanan.
5. Contoh: Pemakaian Larik
Pseudocode Larik
array [1..7] of string
Contoh Larik dalam C++
int foo [5] = {10, 2, 46, 93}
string bar [3] = {“Kuliah”, “Kita”, “Bersama”}
6. Larik 2 Dimensi
Larik 2 dimensi sama dengan matriks pada kasus dunia
nyata.
Pada pendefinisiannya, berarti larik 2 dimensi adalah larik
yang terdapat larik lainnya di dalamnya.
Berarti larik ini juga bisa memiliki lebih dari 2 dimensi.
7. Ilustrasi Larik 2 Dimensi
Misalkan didefinisikan larik 2 dimensi atau matriks
berukuran 5x5, sebenarnya bentuknya akan seperti berikut:
Larik pertama
Larik kedua
(di dalamnya)
9. Pendefinisian Larik 2 Dimensi
Pseudocode Larik 2 Dimensi
array [1..5][1..5] of integer
Contoh Larik dalam C++
int foo [3][3] = {{1,2,3}, {4,5,6}, {7,8,9}}
int bar [5][5];
10. Larik Dinamis
Larik dinamis adalah larik yang ukurannya dapat
ditentukan kemudian (alokasi memorinya)
Terkadang dalam sebuah program terdapat kebutuhan
penyimpanan data bertipe sama yang berubah-ubah
sesuai kondisi, oleh karena itu dapat digunakan sebuah
larik dinamis.
11. Implementasi Larik Dinamis
#include <iostream>
using namespace std;
int main() {
int * foo; // mendefinisikan larik
foo = new int[5]; // alokasikan larik
foo[1] = 5;
foo[4] = 2;
// dst
// setelah selesai digunakan, maka lakukan delete
delete[] foo; // membebaskan memori yang telah dipakai larik
return 0;
}