Konsep Struktur Data &
Array
Kita awali dengan kata kata Bismillah dan Assalamualaikum
Disini saya akan menjelaskan apa itu Konsep Struktur Data & Array atau bisa dibilang ringkasan dari modul pertemuan pertama
Struktur Data adalah suatu koleksi atau kelompok data
yang dapat dikarakteristikan oleh organisasi serta operasi
yang didefinisikan terhadapnya. Pemakaian Struktur Data yang tepat didalam proses
pemrograman, akan menghasilkan Algoritma yang lebih
jelas dan tepat sehingga menjadikan program secara
keseluruhan lebih sederhana.
Konsep Dasar Type Data
Data dapat dikategorikan menjadi :
- Type Data Sederhana atau Data Sederhana : 1. Data Sederhana Tunggal Contohnya Integer, Real/Float, Boolean dan Character. 2. Data Sederhana Majemuk Contohnya String. Struktur Data Sederhana Misalnya Array dan Record.
- Struktur Data Majemuk Terdiri dari Linier Contohnya : Stack, Queue dan Linear Linked List. Non Linier Misalnya : Pohon (Tree), Pohon Biner (Binary Tree), Pohon Cari Biner (Binary Search Tree), General Tree serta Graph.
Definisi Array
- Array / Larik Struktur Data Sederhana yang dapat didefinisikan sebagai pemesanan alokasi memory sementara pada komputer.
- Array dapat didefinisikan sebagai suatu himpunan hingga elemen yang terurut dan homogen.
- Terurut Dapat diartikan bahwa elemen tersebut dapat diidentifikasi sebagai elemen pertama, elemen kedua dan seterusnya sampai elemen ke-n.
- Homogen Adalah bahwa setiap elemen dari sebuah Array tertentu haruslah mempunyai type data yang sama.
- Sebuah Array dapat mempunyai elemen yang seluruhnya berupa integer atau character atau String bahkan dapat pula terjadi suatu Array mempunyai elemen berupa Array.
- Karakteristik Array :
- Mempunyai batasan dari pemesanan alokasi memory (Bersifat Statis)
- Mempunyai Type Data Sama (Bersifat Homogen) 3. Dapat Diakses Secara Acak
- 3 Hal yang harus diketahui dalam mendeklarasikan array :
- Type data array
- Nama variabel array
- Subskrip / index array
- Jenis Array (yang akan dipelajari) adalah :
- Array Dimensi Satu (One Dimensional Array)
- Array Dimensi Dua (Two Dimensional Array)
- Array Dimensi Tiga (Thee Dimensional Array)
Array Dimensi Satu
ARRAY DIMENSI SATU (One Dimensional Array)
Dapat disebut juga dengan istilah vektor yang
menggambarkan data dalam suatu urutan
Deklarasi : Type_Data Nama_Variabel [index]
Misalnya : int A[5];
Penggambaran secara Logika :
void main()
{ int bil [5];
clrscr;
cout<<"Masukkan 5 bilangan genap : "<<endl;
for (int i = 0; i < 5; i++)
{ cout<<"Bilangan ";
cout<< i + 1 <<" : ";
cin>> bil[i];
cout<<endl;
}
cout<<endl;
cout<<"5 bilangan genap yang dimasukkan “ <<endl;
for (int i = 0; i < 5; i++)
cout<<" "<<bil[i];
getch();
}
Rumus untuk menentukan jumlah elemen dalam Array :
Contoh :
Suatu Array A dideklarasikan sbb :
int A[10]; maka jumlah elemen Array dimensi satu tersebut
adalah = 10
PEMETAAN (MAPPING)
ARRAY DIMENSI SATU KE STORAGE
Dimana : @A[i] : Posisi Array yg dicari
B : Posisi awal index di memory komputer
i : Subkrip atau indeks array yg dicari
L : Ukuran / Besar memory suatu type data
Contoh :
Suatu Array A dideklarasikan sebagai berikut :
int A[5]; dengan alamat awal index berada di 0011 (H) dan
ukuran memory type data integer = 2
Tentukan berapa alamat array A[3] ?
KONVERSI BILANGAN
- Decimal adalah bilangan berbasis sepuluh yang terdiridari 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9
- Hexadecimal adalah bilangan berbasis enam belas yang terdiri dari 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, dan F Tabel di bawah adalah contoh konversi bilangan Decimal, dan Hexadecimal
ARRAY DIMENSI DUA (Two Dimensional Array)
Sering digunakan dalam menterjemahkan matriks
pada pemrograman.
Deklarasi : Type_Data Nama_Variabel [Index1] [index2];
Misal : int A[3][2];
Array Dimensi Dua
Menentukan jumlah elemen dalam Array dimensi dua:
Contoh :
Suatu Array X dideklarasikan sbb :
int X[4][3];
maka jumlah elemen Array dimensi dua tersebut adalah
PEMETAAN (MAPPING)
ARRAY DIMENSI DUA KE STORAGE
Terbagi Dua cara pandang (representasi) yang berbeda :
- Secara Kolom Per Kolom (Coloumn Major Order/CMO @M[i][j] = M[0][0] + {(j - 1) * K + (i - 1)} * L
- Secara Baris Per Baris (Row Major Order / RMO) @M[i][j] = M[0][0] + {(i - 1) * N + (j - 1)} * L
Keterangan
@M[i][j] = Posisi Array yg dicari, 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.
Komentar
Posting Komentar