Array 2 Multi Dimensi Struktur Data Array 2

  • Slides: 9
Download presentation
Array 2 & Multi Dimensi Struktur Data

Array 2 & Multi Dimensi Struktur Data

Array 2 Dimensi Array 2 dimensi (matrik/tabel) adlah kumpulan elemen data sejenis dimana setiap

Array 2 Dimensi Array 2 dimensi (matrik/tabel) adlah kumpulan elemen data sejenis dimana setiap elemennya dinyatakan dengan 2 subscript. .

Contoh Array 2 Dimensi Gudang 1 2 3 4 1 50 30 45 15

Contoh Array 2 Dimensi Gudang 1 2 3 4 1 50 30 45 15 2 30 40 65 20 3 60 50 15 40 4 55 35 50 25 5 40 45 40 60 6 70 10 0 55 Barang Misal: Nama Array adl : stock, maka : Stock [1, 1] = 50 Stock [1, 2] =30 Stock [1, 3] =45. . . Stock [6, 4] =55 Jadi ukuran array ini adalah 6 x 4 = 6 baris dan 4 kolom, dengan jumlah elemen datanya 6 x 4 = 24 elemen data.

Representasi Array 2 Dimensi Di memori array A disajikan dalam m. n lokasi memori

Representasi Array 2 Dimensi Di memori array A disajikan dalam m. n lokasi memori yang berurutan, yaitu secara : Bila array 2 D dengan ordo 2. 3 (2 baris dan 3 kolom) Baris/Bari s 1, 1 Kolom/Kolo m 1, 1 1, 2 2, 1 1, 3 1, 2 2, 1 2, 2 1, 1 1, 2 1, 31 2, 2 1, 3 2, 1 2, 2 2, 3 Untuk menghitung alamat array 2 Dimensi Am. n Baris per baris LOC(A[j, k]) = BASE(A) + W[N(j-1) +(k- 1)] Kolom per kolom LOC(A[j, k) = BASE (A)+ W[M(k-1)+(j- 1)]

Contoh Bila array dua dimensi dengan A[3, 5] dimana m=3, n=5 alamat dasarnya :

Contoh Bila array dua dimensi dengan A[3, 5] dimana m=3, n=5 alamat dasarnya : 150 Nilai W : Char Tentukan lokasi A[2, 4] dimana j=2, k=4, secara baris per baris • Jawab : LOC[j, k] = BASE(A) + W[N(j-1) +(k-1)] LOC[2, 4] = 150 + 1[5(2 -1)+(4 -1)] = 150 + 1[5(1) + (3)] = 150 + 1[8] = 158 • Tentukan secara Kolom per kolom !!!!

Representasi Array 3 Dimensi Dapat digambarkan sebagai sebuah ruang yang terdiridari baris, kolom dan

Representasi Array 3 Dimensi Dapat digambarkan sebagai sebuah ruang yang terdiridari baris, kolom dan halaman. Dalam memori array A disajikan dalam k 1, k 2, k 3 dimana k 1 adalah baris, k 2 adalah kolom dan k 3 adalah halaman. Sehingga array diurutkan dalam memori secara berurutan berdasarkan : a. Baris per baris b. Kolom per kolom

 Bila array 3 D dengan ordo 2. 2. 2 (2 baris, 2 kolom

Bila array 3 D dengan ordo 2. 2. 2 (2 baris, 2 kolom dan 2 halaman) Baris/Bari s Kolom/Kolo m 1, 1, 1, 2 2, 1, 1 1, 2, 2, 1, 1, 2 2, 2, 1 1, 2, 2, 2

Menghitung alamat array 3 D Baris/baris : LOC(A[k 1, k 2, k 3]) =

Menghitung alamat array 3 D Baris/baris : LOC(A[k 1, k 2, k 3]) = BASE(A)+W((E 1. L 2+E 2)L 3+E 3) Kolom/kolom : LOC(A[k 1, k 2, k 3]) = BASE(A) + W((E 3. L 2+E 2)L 1+E 1) Banyaknya elemen array data suatu array bisa dihit sbb : Li = Bai – Bbi +1 Bankyaknya indek Ei = Ki -Bbi

Contoh : Bila array 3 D dengan A[3, 5, 2] alamat dasarnya : 150

Contoh : Bila array 3 D dengan A[3, 5, 2] alamat dasarnya : 150 nilai W : Char tentukan alamat lokasi A[2, 4, 2] secara baris per baris Jawab : BB 1= 1 BA 1=3 K 1=2 L 1=3 E 1=1 BB 2=1 BA 2=5 K 2=4 L 2=5 E 2=3 BB 3=1 BA 3=2 K 3=2 L 3=2 E 3=1 LOC(A[k 1, k 2, k 3]) = BASE(A)+W((E 1. L 2+E 2)L 3+E 3) LOC(A[2, 4, 2]) = 150+1((1. 5+3)2+1) = 150 +1((8)2+1) = 150 + 17 = 167