Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

ARRAY SESI 2.

Presentasi serupa


Presentasi berjudul: "ARRAY SESI 2."— Transcript presentasi:

1 ARRAY SESI 2

2 KARAKTERISTIK ARRAY Disusun dari tipe data yang sama Memiliki index
Memiliki komponen Metode akses random index 1 2 3 N Komponen x1 x2 x3 xn

3 Jenis array Mendefenisikan array Array satu dimensi ( vektor)
Array dua Dimensi (matrik) Array multi dimensi Mendefenisikan array Var x : array[1..n] of tipe_data; Contoh Var nilai : array[1..10] of char

4 Array dua dimensi Var X : array[1..n,1..m] of tipe_data;
 n adalah jumlah baris  m adalah jumlah kolom x11 x12 x13 x1m x21 x22 x23 .. x2m x31 x32 x33 x3m xn1 xn2 xn3 xnm

5 Pengalamatan array Pengalamatan array adalah proses penempatan data/komponen array ke dalam memori komputer. Komponen-komponen array akan ditempatkan berurutan sesuai dengan urutan komponen dalam array OS X1 X2 X3 X4 Xn 1 2 3 4 …. n x1 x2 x3 x4 ….. xn

6 Besarnya kebutuhan Memori untuk Array X dapat dihitung dengan
m = n*LB Dimana m adalah besar memori n adalah jumlah data LB adalah lebar memori untuk tipe datanya Contoh: Jika sebuah array x didefeniskan sebagai berikut x : array[1..100] of integer Dimana tipe data integer membutuhkan 2 byte memory, sehingga LB =2 Maka besarnya memory untuk array x adalah M = 100x 2 = 200 byte meory

7 Untuk mencari alamat komponen/elemen I
Add(x(i)) = b+(i-1)*LB Dimana b : base address/Alamat awal untuk array X I : adalah index dari alamat di cari Contoh : Jika array x diatas di tempatkan dari alamat 1000, maka alamat dari x(9) berada pada add(x(9)) = (9-1)*2 = = 1016

8 Array dua dimensi Misalkan sebuah matriks berukuran x,y, maka alamat dari x(p,q) dapat dihitung dengan rumus Add(x(p,q))= b+((p-1)*y+q-1)*LB Contoh : X : array[1..5,1..10] of real Hitunglah besar memory untuk x Tentukan alamat dari x(5,6) jika base address adalah 5000

9 Operasai pada array Memberikan nilai array Membaca nilai array
Pencarian(search) Pengurutan(Sort)

10 Pencarian Linier Search Binary Search

11 Pengurutan/Sorting Bubble sort Selection sort Insertion sort
Shell sort Merge sort Radix sort Quick sort Heap short

12 Bubble Sort Bubble artinya gelembung dan gelembung selalu mengapung. Prinsip proses pengurutan dengan menggunakan metode bubble sort adalah menempatkan (mengapungkan) nilai terbesar (jika urut ascending) atau nilai terkecil (jika urut descending) pada elemen ujung paling kanan pada tahap per tahapnya.

13 Bubble Sort Sudah ada array satu dimensi sudah ada isinya, diilustrasikan sebagai berikut : Akan diurutkan ascending sehingga dihasilkan urutan data seperti berikut:

14 Bubble Sort Maka proses pengurutan tahap demi tahap dengan menggunakan metode bubble sort adalah sebagai berikut :

15 Bubble Sort Dari array diatas yang terdiri dari 6 elemen dibutuhkan proses sebanyak 5 tahap maka untuk N elemen dibutuhkan (N-1) tahap proses pengurutan. Selanjutnya proses tahap per tahap akan diuraikan lebih rinci lagi. Pada proses setiap tahap algoritma yang digunakan adalah proses banding (compare) dan tukar (swap). Bukan semata-mata meletakkan nilai terbesar ke ujung kanan, melainkan membandingkan nilai-nilai yang ada pada masing-masing elemen.

16 Bubble Sort Algoritma tahap 1 untuk array dengan jumlah elemen N :
Bandingkan (compare) A[0] dan A[1], jika A[0] > A[1] maka lakukan tukar nilai (swap), dilanjutkan dengan bandingkan A[1] dan A[2], jika A[1] > A[2] maka lakukan tukar nilai, dan seterusnya sampai perbandingan A[N-2] dan A[N-1] sehingga diperoleh nilai terbesar pertama yang diletakkan pada A[N-1]. Untuk tahap ke-K lakukan dari perbandingan A[0] dan A[1] sampai dengan perbandingan A[N-2-K] dan A[N-1-K]

17 Flowchar t

18 Rumus Bubble Sort for (K = 0 ; K < N-1 ; K++) {
for (i = 0 ; i < N-2-K ; i++) if ( A[i] > A[i+1] ) x = A[i]; A[i] = A[i+1]; A[i+1] = x; }

19 Selection Sort Metode selection sort ini menggunakan proses pencarian (searching) kemudian tukar nilai yang dicari dengan nilai pada elemen awal. Misalnya untuk pengurutan ascending, dicari nilai terkecil pertama kemudian tukar dengan elemen ke-0,selanjutnya dicari nilai terkecil kedua dan tukar dengan elemen ke-1 dan seterusnya.

20 Flowchar t

21 Rumus Selection Sort for ( i=0 ; i <= N-2 ; i++) { j = i;
for ( k = i+1 ; k <= N-1 ; k++ ) if (A[k] > A[j]) j = k; } x = A[i]; A[i] = A[j]; A[j] = x;

22 Insertion Sort Tahap 1 : Dimulai dari A[1]
Simpan nilai A[1] pada sebuah variabel (misal x) Geser masing-masing satu langkah ke kanan semua nilai yang berada pada kiri A[1] satu per satu jika nilai tersebut lebih besar dari x Insert (sisipkan) x di bekas tempat nilai yang terakhir digeser. Tahap 2 : Simpan nilai A[2] pada variabel x. Geser masing-masing satu langkah ke kanan semua nilai yang berada pada kiri A[2] satu per satu jika nilai tersebut lebih besar dari x Tahap berikutnya dan seterusnya hingga terakhir tahap ke N-1 (untuk array dengan N elemen). Instruksi pergeseran ke kanan adalah A[i]=A[i - 1], sehingga nilai A[i] akan hilang (ditimpa oleh nilai A[i-1] oleh karena itu pada awal tahap A[i] disimpan pada sebuah variabel.

23 Flowchar t


Download ppt "ARRAY SESI 2."

Presentasi serupa


Iklan oleh Google