A. Definisi Struktur
Struktur
adalah kumpulan elemen-elemen data yang digabungkan menjadi satu kesatuan.
Masing-masing elemen data tersebut dikenal dengan sebutan field. Field data
tersebut dapat memiliki tipe data yang sama ataupun berbeda. Walaupun
field-field tersebut berada dalam satu kesatuan, masing-masing field tersebut
tetap dapat diakses secara individual. Field-field tersebut digabungkan menjadi
satu dengan tujuan untuk kemudahan dalam operasinya.
B.
Definisi Array
Array
atau larik sendiri di definisikan sebagai pemesanan alokasi memory berurutan.
Definisi ini kurang tepat, karena terjadi kerancuan antara struktur data dan
representasinya. Memang benar array hampir selalu di implementasikan
menggunakan memory berurutan tapi tidak selalu demikian. Semua elemem array bertipe
sama. Array cocok untuk organisasi kumpulan data homogen yang ukuran atau
jumlah elemen maksimumnya telah diketahui dari awal. Homogen adalah bahwa
setiap elemen dari sebuah array tertentu haruslah mempunyai tipe data yang
sama.
Dari
perngertian struktur dan pengertian array di atas, maka dapat ditarik
kesimpulan bahwa struktur array adalah kumpulan elemen-elemen data yang
digabungkan menjadi suatu kesatuan yang memiliki tipe homogen (sama).
1. Karakteristik
Array
a. Mempunyai
batasan dari pemesanan alokasi memori (bersifat statis).
b. Mempunyai
tipe data sama (bersifat homogen).
c. Dapat
diakses secara acak.
2. Deklarasi
Array
Ada tiga hal yang harus
diketahui dalam pendeklarasian, yaitu :
a. Type
data array.
b. Nama
variable array.
c. Subkrip
/ index array.
Contoh deklarasai array adalah
sebagai berikut :
int A[10], artinya variabel A
adalah kumpulan data sebanyak 10 bilangan bertipe integer.
C. Penggunaan
Array
Pada dasarnya penggunaan array
sangat luas tidak hanya digunakan pada bahasa pemrogaman. Contoh penggunaan
array sebagai berikut :
1. Array
digunakan untuk suatu database, contoh : tabel.
2. Array
digunakan untuk operasi matematika seperti vektor.
3. Digunakan
dalam bentuk struktur data lain, contohnya list.
D. Pengurutan
Array
Pengurutan atau sorting adalah
proses yang paling sering dilakukan dalam pengolahan data, pengurutan dibedakan
menjadi dua, yaitu :
1. Pengurutan internal
Pengurutan dilakukan terhadap
sekumpulan data di media memory internal komputer di mana data dapat diakses
elemennya secara langsung.
2. Pengurutan eksternal
Pengurutan data di memory
sekunder. Biasanya data bervolume besar sehingga tidak mampu dimuat semuanya di
memory utama.
E. Operasi
Dasar Pada Array
Operasi terhadap elemen array
dilakukan dengan pengaksesan langsung. Nilai di masing-masing posisi elemen
dapat di ambil dan nilai dapat disimpan tanpa melewati posisi-posisi lain.
Terdapat dua operasi, yaitu :
a. Operasi
terhadap satu elemen/posisi array
b.
Operasi terhadap array sebagai keseluruhan
Dua operasi paling dasar
terhadap satu elemen/posisi adalah :
a. Penyimpanan
nilai elemen ke posisi tertentu di array
b. Pengambilan
nilai elemen dari posisi tertentu di array
Operasi-operasi dasar terhadap
array secara keseluruhan adalah :
a. Operasi
penciptaan
b. Operasi
penghancuran
c. Operasi
pemrosesan tranversal
d. Operasi
pencarian (table look-up)
e. Operasi
sorting
1. Penyimpanan dan Pengambilan
Nilai
Saat penyimpanan dan
pengambilan nilai array, biasanya bahasa pemrogaman menyediakan sintaks
tertentu untuk penyimpanan dan pengambilan nilai elemen pada posisi tertentu di
array.
Contoh :
A[5] = 78, berarti penyimpanan
nilai 78 ke posisi ke-5 dari array A
C = A[5],
berarti pengambilan nilai elemen posisi ke-5 dari array A
2. Penciptaan dan Penghancuran
Operasi penciptaan biasa
disebut inisialisasi. Operasi ini untuk mempersiapkan struktur data untuk
operasi-operasi berikutnya. Operasi penghancuran menyatakan ketidak berlakuan
struktur data atau membebaskan memory, menyerahkan memory ke manajemen memory
agar dapat di pergunakan keperluan lain. Operasi penghancuran penting terutama
bila struktur data di implementasikan secara dinamis menggunakan pointer.
3. Pemrosesan Tranversal
Operasi pemrosesan transversal
adalah pemrosesan mengolah seluruh elemen secara sistematik.
4. Pencarian di Array (table
look-up)
Pencarian di array (table
look-up) adalah proses pencarian suatu nilai di array. Klasifikasi pencarian di
array adalah :
1. Pencarian sekuen (sequential searching), yaitu
:
a. Tanpa
boolean, terbagi :
o
Tanpa sentinen
o
Dengan sentinen
b. Menggunakan
boolean
2. Pencarian secara biner/dokotom (binary =
dochotomy searching).
F. Bentu-Bentuk
Array
1. Array Satu Dimensi
Array satu dimensi yaitu
kumpulan elemen-elemen identik yang hanya terdiri dari satu baris atau hanya
satu kolom saja alamat penyimpanan data (indeks). Elemen-elemen tersebut
memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda.
Bentuk umum :
Tipe_data namaArray[n] =
{elemen0, elemen1, elemen2,…..,n};
n = jumlah elemen
contoh pada progam : int
ukur[5] = {39, 40. 41, 38, 40};
- int
adalah tipe data yang berupa bilangan bulat.
- Ukur
adalah nama variabel array.
- [5]
adalah ukuran untuk menyatakan jumlah maksimal elemen array.
- {..}
adalah tempat pemberian nilai/elemen array.
2. Array Dua Dimensi
Array dua dimensi sering
digambarkan sebagai sebuah matriks, merupakan perluasan dari array satu
dimensi. Jika array satu dimensi hanya terdiri dari sebuah baris dan beberapa
kilom elemen, maka array dua dimensi terdiri dari beberapa baris dan beberapa kolom
elemen bertipe sama. sehingga dapat digambarkan sebagai berikut :
Bentuk umum :
Tipe_data namaArray [m][n] =
{{a,b,…z},{1,2,…,n-1}};
contoh : int lulus[4][3];
- Nilai
4 untuk menyatakan banyaknya baris dan 3 untuk menyatakan banyaknya kolom.
Pendeklarasian array dua
dimensi hampir sama dengan pendeklarasian array satu dimensi, kecuali bahwa
array dua dimensi terdapat dua jumlah elemen yang terdapat dikurung kurung siku
dan keduanya boleh tidak sama. Elemen array dua dimensi diakses dengan menuliskan
kedua indeks elemennya dalam kurung.
3. Array MultiDimensi
Array ini seperti array dimensi
dua tetapi dapat memiliki ukuran yang lebih besar. Sebenarnya array dimensi
banyak ini tidak terlalu sering digunakan, tetapi sewaktu-waktu kalau dimensi
yang dibutuhkan banyak, maka array ini sangat memegang peranan yang penting.
Bentuk umum pendeklarasian
array multidimensi :
Tipe_data
namaArray[ukuran1][ukuran2]…[ukuranN];
Sebagai contoh :
int data_huruf[2][8][8];
contoh di atas merupakan
pendeklarasian array data_huruf sebagai array berdimensi tiga.