Struktur data adalah sebuah skema organisasi, seperti struktur dan array, yang diterapkan pada data sehingga data dapat diinterprestasikan dan sehingga operasi-operasi spesifik dapat dilaksanakan pada data tersebut. Berikut adalah penjelasan dari struktur dan array adalah sebagai berikut:
1. Struktur
Struktur adalah koleksi dari variabel yang dinyatakan dengan sebuah nama, dengan sifat setiap variabel dapat memiliki tipe yang berlainan. Struktur biasa dipakai untuk mengelompokkan beberapa informasi yang berkaitan menjadi sebuah satu kesatuan. Contoh sebuah struktur adalah informasi data tanggal, yang berisi: tanggal, bulan dan tahun.
1a. Mendeklarasikan Struktur
Contoh pendefinisian tipe struktur adalah sebagai berikut:
struct data_tanggal
{
int tanggal;
5
5
int bulan;
int tahun;
};
yang mendefinisikan tipe struktur bernama data_tanggal, yang terdiri dari tiga buah elemen (field) berupa : tanggal, bulan dan tahun. Pendefnisian dan pendeklarasian struktur dapat juga ditulis sebagai berikut:
struct data_tanggal
{
int tanggal;
int bulan;
int tahun;
} tgl_lahir;
Bentuk umum dalam mendefinisikan dan mendeklarasikan struktur adalah sebagai
berikut:
struct nama_tipe_struktur
{
tipe field1;
tipe field2;
.
.
tipe fieldn;
}variabel_struktur1, ... , variabel_strukturM;
Masing-masing tipe dari elemen struktur dapat berlainan. Adapun variabel_struktur1 sampai dengan variabel_strukturM menyatakan bahwa variabel struktur yang dideklarasikan bisa lebih dari satu. Jika ada lebih dari satu variabel, antara variabel struktur dipisahkan dengan tanda koma.
1b. Mengakses Elemen Struktur
Elemen dari struktur dapat diakses dengan menggunakan bentuk
variabel_struktur.nama_field
Antara variabel_struktur dan nama_field dipisahkan dengan operator titik (disebut
operator anggota struktur). Contoh berikut merupakan instruksi untuk mengisikan data
pada field tanggal
tgl_lahir.tanggal = 30;
2. Array
Array adalah organisasi kumpulan data homogen yang ukuran atau jumlah elemen maksimumnya telah diketahui dari awal. Array umumnya disimpan di memori computer secara kontigu (berurutan). Deklarasi dari array adalah sebagai berikut:
int A[5]; artinya variabel A adalah kumpulan data sebanyak 5 bilangan bertipe
integer.
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
2a. 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 A
C = A[10], berarti pengambilan nilai elemen posisi ke-10 dari array A
2b. Keungulan dan Kelemahan Array
Keunggulan array adalah sebagai berikut:
1 Array sangat cocok untuk pengaksesan acak. Sembarang elemen di array dapat diacu
secara langsung tanpa melalui elemen-elemen lain.
2. Jika berada di suatu lokasi elemen, maka sangat mudah menelusuri ke elemenelemen 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:
1.Array harus bertipe homogen. Kita tidak dapat mempunyai array dimana satu elemen adalah karakter, elemen lain bilangan, dan elemen lain adalah tipe-tipe lain
2. 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.
SUMEBR :
Sutanta, Edhy., 2004, Algoritma Teknik Penyelesaian Permasalahan Untuk Komputasi, PT Graha Ilmu, Yogyakarta.
Tidak ada komentar:
Posting Komentar