Wednesday, October 29, 2014
1. PENGERTIAN
Array atau larik 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.
2. KARAKTERISTIK ARRAY
a)
Mepunyai batasan dari pemesanan
alokasi memori (bersifat statis)
b)
Mempunyai tipe data sama (bersifat
homogen)
c)
Dapat diakses secara acak.
2.1. DEKLARASI ARRAY
Ada tiga hal yang harus di ketahui dalam mendeklarasikan array, yaitu :
a)
Type data array
b)
Nama variable array
c)
Subkrip / index array.
Contoh deklarasi dari array adalah sebagai berikut :
int A[5] ; artinya variabel A adalah kumpulan data sebanyak 5
bilangan bertipe
integer.
2.2. JENIS ARRAY
1.
ARRAY DIMENSI SATU
Deklarasi :
Type_Data Nama_Variabel [index]
Rumus untuk menentukan jumlah elemen dalam array adalah
:
|
p = Perkalian dari index sebelumnya (untuk arraybdimensi dua dan
tiga).
PEMETAAN (MAPPING) ARRAY DIMENSI SATU KE STORAGE
Rumus : @A[i] = B + (i – 1) * L
Dimana :
@A[i] :
Posisi array yang dicari
B : Posisi awal index di memori computer
i : Subkrip atau index array yang di cari
L : Ukuran atau besar memori suatu tipe data
2.
ARRAY DIMENSI DUA
Deklarasi : Type_Data Nama_Variabel [index1] [index2]
Menentukan jumlah
elemen dalam array dimensi dua :
|
p = Perkalian dari statemen sebelumnya
PEMETAAN (MAPPING) ARRAY DIMENSI DUA KE STORAGE
Terbagi dua cara pandang (representasi) yang berbeda :
·
Secara kolom per kolom (coloumn
major order / CMO)
|
·
Secara baris per baris (row
major order / RMO)
|
Keterangan :
@M[i][j] = Posisi array yang di cari, M[0][0 = Posisi
alamat awal index array, i = Baris, j = Kolom, L = Ukuran memory type data, K =
Banyaknya elemen per kolom, N = Banyaknya elemen per baris.
3.
ARRAY DIMENSI TIGA
Deklarasi : type_Data Nama_Variabel [index1][index2][index3]
Menentukan jumlah elemen dalam array
dimensi tiga :
|
p = Perkalian dari statemen sebelumnya
PEMETAAN (MAPPING) ARRAY DIMENSI
TIGA KE STORAGE
Rumus : @M[n][m][p] = M[0][0][0] + {((n – 1) * (index1)) + ((m – 1) * (index2)) + ((p – 1) * (index3)} * L
Rumus : @M[n][m][p] = M[0][0][0] + {((n – 1) * (index1)) + ((m – 1) * (index2)) + ((p – 1) * (index3)} * L
|
Contoh Array 3 Dimensi. (Tugas Mata Kuliah ASIA Struktur Data)
TIKET (A, B, C)
- Tingkat Pembayaran (Ekslusiv, Ekonomi)
- Jadwal Berangkat (Pagi, Malam)
- Transportasi yang Digunakan (Bus, Kapal, Pesawat, Kereta, Ojek)
TRIANGULAR ARRAY (ARRAY SEGI TIGA)
Triangular array dapat merupakan Upper Triangular (seluruh elemen di
bawah diagonal utama = 0), ataupun Lower Triangular (seluruh elemen di atas
diagonal utama = 0).
Dalam array Lower Triangular dengan N baris, jumlah maksimum elemen
<> 0, tidak lebih dari
|
SPERSE ARRAY (ARRAY JARANG)
Suatu array yang sangat banyak elemen nol-nya.
2.3. OPERASI DASAR PADA
ARRAY
Operasi terhadap elemen di array dilakukan dengan
pengaksesan langsung. Nilai
di masing-masing posisi elemen dapat diambil dan nilai dapat
disimpan tanpa melewati
posisi-posisi lain.
Terdapat dua tipe operasi, yaitu :
1. Operasi terhadap satu elemen / posisi dari array
2. Operasi terhadap array sebagai keseluruhan
Dua operasi paling dasar terhadap satu elemen / posisi adalah
1. Penyimpanan nilai elemen ke posisi tertentu di array
2. Pengambilan nilai elemen dari posisi tertentu di array
Operasi-operasi dasar terhadap array secara keseluruhan adalah :
1. Operasi penciptaan2. Operasi penghancuran3. Oparasi pemrosesan traversal4. Operasi pencarian (table look-up)5. Operasi sorting
2.3.1. 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
2.3.2. PENYIMPANAN DAN
PENGAMBILAN NILAI
Biasanya bahasa pemrograman menyediakan sintaks tertentu
untuk penyimpanan dan pengambilan nilai elemen pada posisi tertentu di array.
Contoh :
A[10] = 78, berarti penyimpanan nilai 78 ke posisi ke-10 dari array AC = A[10], berarti pengambilan nilai elemen posisi ke-10 dari array A
2.3.3. PEMROSESAN
TRANSVERSAL
Operasi pemrosesan transversal adalah pemrosesan
mengolah seluruh elemen secara sistematik.
2.3.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:
i.
Tanpa Boolean, terbagi:
·
Tanpa sentinen
·
Dengan sentinen
ii.
Menggunakan boolean
2)
Pencarian secara biner / dikotom
(binary = dichotomy searching).
2.4. PENGURUTAN ARRAY
Pengurutan atau
sorting adalah proses yang paling sering di lakukan dalam pengolahan
data.pengurutan di bedakan menjadi dua, yaitu :
- Pengurutan internal
Pengurutan dilakukan terhadap sekumpulan data di media
memory internal komputer dimana data dapat di akses elemennya secara langsung.
- Pengurutan eksternal
Pengurutan data di memory sekunder. Biasanya data
bervolume besar sehingga tidak mampu dimuat semuanya di memori utama.
3. KEUNGGULAN DAN
KELEMAHAN ARRAY
Keunggulan array adalah sebagai berikut :
- Array sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat diacu secara langsung tanpa melalui elemen-elemen lain.
- Jika berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemen-
elemen tetangga, baik elemen pendahulu atau elemen
penerus 3
- Jika elemen-elemen array adalah nilai-nilai independen dan seluruhnya harus terjaga,
maka penggunaan penyimpanannya sangat efisien.
Kelemahan array adalah sebagai berikut :
Array mempunyai fleksibilitas rendah, sehingga tidak cocok untuk
berbagai aplikasi karena array mempunyai
batasan sebagai berikut :
- Array harus bertipe homogen. Kita tidak dapat mempunyai array dimana satu elemen
adalah karakter, elemen lain bilangan, dan elemen lain
adalah tipe-tipe lain
- Kebanyakan bahasa pemrograman mengimplementasikan array statik yang sulit
diubah ukurannya di waktu eksekusi. Bila penambahan dan
pengurangan terjadi
terus-menerus, maka representasi statis
• Tidak efisien dalam penggunaan memori
• Menyiakan banyak waktu komputasi
• Pada suatu aplikasi, representasi statis tidak
dimungkinkan
Bila penambahan dan pengurangan terjadi terus menerus, maka
representasi statis (array):
- Tidak efisien dalam penggunaan memory
- Menyiakan banyak waktu komputasi
- Pada suatu aplikasi, representasi statis tidak di mungkinkan.
Label:
Array,
Informatika,
Struktur Data
Subscribe to:
Post Comments (Atom)
Popular Posts
- Cara Mengubah Wajah Kita Dengan Wajah Orang Lain Dengan Photoshop
- Cara mengubah foto gemuk menjadi kurus dengan photoshop
- Cara Mengubah Foto Digital Mejadi karikatur dengan photoshop
- Cara Menjadikan Foto Menjadi Puzzle dengan Photoshop
- Cara memberi Efek Sunset Pada Foto Dengan Photoshop
- Cara Mengubah Foto Menjadi Kartun 2D dengan Photoshop
- Buat Foto Jadi Malaikat dengan Photoshop
- Membuat photo digital menjadi photo hasil kamera SLR dengan photoshop
- Membuat Efek Foto Anggle Light dengan Photoshop
- Buat Ilustrasi Vexel Surreal dengan Photoshop
0 komentar:
Post a Comment