Kompleksitas Algoritma

Slides:



Advertisements
Presentasi serupa
Bab 1 PENDAHULUAN.
Advertisements

Kompleksitas Algoritma
Dosen : Rinci Kembang Hapsari, S.Si
Tim Matematika Diskrit
Kompleksitas Algoritma
PENGANTAR ALGORITMA DAN PEMROGRAMAN
SISTEM OPERASI MODUL Sistem Paging Yuli Haryanto, M.Kom
Algoritma Runut-balik (Backtracking)
Design and Analysis of Algorithm Back Track Algorithm
Kompleksitas Algoritma
MATEMATIKA DISKRIT Kompleksitas Algoritma Kelompok 9
Algoritma dan Struktur Data
Kompleksitas Waktu Asimptotik
Kompleksitas Waktu Asimptotik
TEKNIK OPTIMASI.
Kompleksitas Algoritma
Pertemuan-3 Laju Pertumbuhan Fungsi : Pengertian, motivasi dan manfaat
14. KOMPLEKSITAS ALGORITMA.
Pertemuan 3 ALGORITMA & FUNGSI KOMPLEKSITAS
PERTEMUAN 4 TAHAP PEMROGRAMAN.
Pertemuan-2 Kriteria kebaikan suatu algoritme Correctness
14. KOMPLEKSITAS ALGORITMA. Untuk keperluan analisis algoritma, kita perlu mengetahui seberapa cepat pertumbuhan atau perkembangan suatu fungsi. Pertumbuhan.
PART 6 Algoritma DOSEN : AHMAD APANDI, ST.
P31035 Algorithms and Complexity 3 SKS
Algoritma Brute Force Oleh: Muhammad Musta’in ( )
PERTEMUAN 1.
Sistem Paging Edi Sugiarto, S.Kom.
Notasi Asimptotik Team Fasilkom.
CSG3F3/ Desain dan Analisis Algoritma
Istiqomah, S.Kom/Tekkom 2013
Strategi Algoritma Kuliah 2 : Kompleksitas Algoritma
PENGANTAR STRUKTUR DATA
CSG523/ Desain dan Analisis Algoritma
Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008
Algoritma & Struktur Data TG22113 Kartika Firdausy - UAD
Pertemuan 4 ALGORITMA lanjutan….
Kompleksitas Algoritma
PART 6 Algoritma DOSEN : AHMAD APANDI, ST.
Array 1.
Faktor analisa algoritma
Pengenalan Analisis Algoritma
Teknik Optimasi.
Pengantar.
MATERI PERKULIAHAN ANALISIS ALGORITMA
Mata kuliah : K0144/ Matematika Diskrit Tahun : 2008
Notasi Asymtotik Pertemuan 2.
ALGORITMA DAN PEMROGRAMAN III
Modul 4 : Analisis Algoritma & Struktur Data
Algoritma Brute Force.
Analisis dan Perancangan Algoritma
STRUKTUR DATA Konsep Dan Arsitektur.
Analisa Algoritma Asimtotik.
Kompleksitas Algoritma
PEMROGRAMAN I Semester I 2017/2018
Algoritma Divide and Conquer
Kompleksitas Algoritma
Kompleksitas Waktu Asimtotik
Algoritma Divide and Conquer
PERTEMUAN II PENGANTAR
Algoritma Divide and Conquer
Algoritma Brute Force.
Dr. Mufid Nilmada, SSi., MMSI
Pengantar Strategi Algoritma
TURUNAN FUNGSI TRIGONOMETRI
Desain dan Analisis Algoritma
Analisis Algoritma E. Haodudin Nurkifli Teknik Informatika
Notasi Asimptotik Team Fasilkom.
Algoritma & Pemrograman 1 Chapter 1 Achmad Fitro The Power of PowerPoint – thepopp.com.
Notasi Asimptotik Team Fasilkom.
Desain dan Analisis Algoritma
Transcript presentasi:

Kompleksitas Algoritma

Pendahuluan Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien).   Algoritma yang bagus adalah algoritma yang mangkus. Kemangkusan algoritma diukur dari berapa jumlah waktu dan ruang (space) memori yang dibutuhkan untuk menjalankannya.

Algoritma yang mangkus ialah algoritma yang meminimumkan kebutuhan waktu dan ruang. Kebutuhan waktu dan ruang suatu algoritma bergantung pada ukuran masukan (n), yang menyatakan jumlah data yang diproses.   Kemangkusan algoritma dapat digunakan untuk menilai algoritma yang bagus.

Mengapa kita memerlukan algoritma yang mangkus Mengapa kita memerlukan algoritma yang mangkus? Lihat grafik di bawah ini.

Model Perhitungan Kebutuhan Waktu/Ruang Kita dapat mengukur waktu yang diperlukan oleh sebuah algoritma dengan menghitung banyaknya operasi/instruksi yang dieksekusi.   Jika kita mengetahui besaran waktu (dalam satuan detik) untuk melaksanakan sebuah operasi tertentu, maka kita dapat menghitung berapa waktu sesungguhnya untuk melaksanakan algoritma tersebut.

Model abstrak pengukuran waktu/ruang harus independen dari pertimbangan mesin dan compiler apapun.   Besaran yang dipakai untuk menerangkan model abstrak pengukuran waktu/ruang ini adalah kompleksitas algoritma. Ada dua macam kompleksitas algoritma, yaitu: kompleksitas waktu dan kompleksitas ruang.

Kompleksitas waktu, T(n), diukur dari jumlah tahapan komputasi yang dibutuhkan untuk menjalankan algoritma sebagai fungsi dari ukuran masukan n.   Kompleksitas ruang, S(n), diukur dari memori yang digunakan oleh struktur data yang terdapat di dalam algoritma sebagai fungsi dari ukuran masukan n. Dengan menggunakan besaran kompleksitas waktu/ruang algoritma, kita dapat menentukan laju peningkatan waktu (ruang) yang diperlukan algoritma dengan meningkatnya ukuran masukan n.

Kompleksitas Waktu Dalam praktek, kompleksitas waktu dihitung berdasarkan jumlah operasi abstrak yang mendasari suatu algoritma, dan memisahkan analisisnya dari implementasi. Contoh 2. Tinjau algoritma menghitung rerata pada Contoh 1. Operasi yang mendasar pada algoritma tersebut adalah operasi penjumlahan elemen-elemen ak (yaitu jumlahjumlah+ak),   Kompleksitas waktu HitungRerata adalah T(n) = n.

Kompleksitas Waktu Asimptotik

Aturan Untuk Menentukan Kompleksitas Waktu Asimptotik

Notasi Omega-Besar dan Tetha-Besar

TEOREMA. Bila T(n) = am nm + am-1 nm-1 + TEOREMA. Bila T(n) = am nm + am-1 nm-1 + ... + a1n+ a0 adalah polinom derajat m maka T(n) adalah berorde nm.

Latihan Soal

2. Berapa kali instruksi assignment pada potongan program dalam notas Bhasa Pascal di bawah ini dieksekusi? Tentukan juga notasi O-besar.   for i := 1 to n do for j := 1 to n do for k := 1 to j do x := x + 1;

3. Untuk soal (a) dan (b) berikut, tentukan C, f(n), n0, dan notasi O-besar sedemikian sehingga T(n) = O(f(n)) jika T(n)  C  f(n) untuk semua n  n0: (a)      (a) T(n) = 2 + 4 + 6 + … + 2n (b)   T(n) = (n + 1)(n + 3)/(n + 2)