Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008

Presentasi serupa


Presentasi berjudul: "Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008"— Transcript presentasi:

1 Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008
PENGANTAR ALGORITMA Pertemuan 11: Bina Nusantara

2 Namun algoritma dapat dianalisis efisiensi dan kompleksitasnya.
Pengertian Algoritma Algoritma adalah urutan langkah yang tepat dan pasti dalam memecahkan suatu masalah secara logis. Beberapa masalah dapat diselesaikan dengan algoritma yang bermacam-macam asal hasilnya sama. Setiap bahasa pemrograman memiliki kelebihan dan kekurangan dalam mengimplementasikan algoritma dan setiap pemrogram dapat mengimplementasikan suatu algoritma dengan cara yang berbeda-beda pula. Namun algoritma dapat dianalisis efisiensi dan kompleksitasnya. Bina Nusantara

3 Penilaian algoritma didasarkan pada:
Analisis Algoritma Penilaian algoritma didasarkan pada: Waktu eksekusi (paling utama) Penggunaan memori/sumber daya Kesederhanaan dan kejelasan algoritma Analisis algoritma tidak mudah dilakukan secara pasti, maka hanya diambil: Kondisi rata-rata (average case) Kondisi terburuk (worst case) Waktu eksekusi dipengaruhi oleh: Jenis data input Jumlah data input Pemilihan instruksi bahasa pemrograman Bina Nusantara

4 Analisis Algoritma (2) Faktor-faktor yang menyulitkan analisis disebabkan oleh: Implementasi instruksi oleh bahasa pemrograman yang berbeda Ketergantungan algoritma terhadap jenis data Ketidakjelasan algoritma yang diimplementasikan Langkah-langkah analisis algoritma Menentukan jenis/sifat data input. Mengidentifikasi abstract operation dari data input. Menganalisis secara matematis untuk menentukan average case atau worst case nya. Bina Nusantara

5 Big-Oh T(n) = O(f(n)) T(n) ≤ c.f(n)
Adalah fungsi yang lebih berkaitan dengan kelajuan proses daripada kelajuan pertambahan data. T(n) = O(f(n)) Jika ada konstan c, sehingga T(n) ≤ c.f(n) Secara sederhana dikatakan bahwa O(f(n)) dpt dianggap sebagai nilai maksimum dari c.f(n). Bina Nusantara

6 Big-Oh Contoh: Jika f(n) = 2n2 maka T(n) = O(n2)
Jika f(n) = 4n2 + 7n + 3 maka T(n) = O(n2) Jika f(n) = n3 – 2n + 4 maka T(n) = O(n3) Bina Nusantara

7 Contoh Big-Oh Bina Nusantara

8 Contoh Big-Oh Contoh program: sum = 0; for( i=0; i<n; i++)
for(j=0; j<n; j++) sum = sum + a[j]; Bina Nusantara

9 Klasifikasi Algoritma
Bina Nusantara

10 Klasifikasi Algoritma (2)
Bina Nusantara

11 Klasifikasi Algoritma (3)
Bina Nusantara

12 Klasifikasi Algoritma (4)
Bina Nusantara

13 Klasifikasi Algoritma (5)
Bina Nusantara

14 Tabel Perbandingan Bina Nusantara

15 Implementasi Pada implementasinya, algoritma kadang-kadang memiliki Big-Oh yang merupakan kombinasi dari klasifikasi dasar tersebut. Perancangan algoritma yang memiliki Big-Oh baik tetapi rumit tidak selalu menguntungkan apabila jumlah data inputnya hanya sedikit. Nilai Big-Oh adalah nilai worst case, sehingga dalam implementasinya biasanya tidak mencapai nilai setinggi itu. Bina Nusantara

16 Contoh dan Aturan For loop (perulangan) Waktu eksekusi pada for loop, maksimum sebanyak waktu eksekusi statement-statement yang ada di dalam loop dikalikan banyaknya iterasi. Contoh: for(a=0; a<n; a++) //n kali { m = p + q; //n kali t = y * z; //n kali } Waktu eksekusi = 3 x n kali Jadi T(n) = O(n) Bina Nusantara

17 Contoh dan Aturan Contoh: for(i=0 ; i<n ; i++) //n kali
Nested for loop (perulangan bersarang) Dianalisis dari loop terdalam kemudian keluar. Waktu eksekusi total sebuah statement adalah waktu eksekusi statement tsb dikalikan hasil kali dari banyaknya iterasi semua loop yang ada diluarnya. Contoh: for(i=0 ; i<n ; i++) //n kali for( j=0 ; j<m ; j++) //m kali a[i,j] = 0 ; //m x n kali a[i,j] akan dieksekusi sebanyak (m x n) kali. Jadi T(n) = O(n2) Bina Nusantara

18 Consecutive Statement (statement yang berurutan)
Untuk statement yang berurutan, waktu eksekusinya adalah jml dari masing-masing statement. Berdasarkan pengertian Big-OH, hal tsb akan diambil nilai yang terbesar. Bina Nusantara

19 Contoh dan Aturan if else
Total waktu eksekusi adalah waktu test ditambah waktu yang terbesar dari eksekusi Statemen1 atau Statemen2 Bina Nusantara

20 Terima kasih Semoga berhasil Bina Nusantara


Download ppt "Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008"

Presentasi serupa


Iklan oleh Google