0 penilaian0% menganggap dokumen ini bermanfaat (0 suara)
19 tayangan9 halaman
Dokumen tersebut membahas analisis kompleksitas algoritma. Analisis kompleksitas berguna untuk memperkirakan kecepatan algoritma dalam menyelesaikan masalah. Dokumen tersebut menjelaskan beberapa konsep dasar seperti menghitung jumlah 'instruksi' algoritma, contoh algoritma seperti selection sort dan rekursi, serta membandingkan orde kompleksitas seperti O(n) dan O(n^2). Diakhir diberikan panduan perkiraan batas wak
Dokumen tersebut membahas analisis kompleksitas algoritma. Analisis kompleksitas berguna untuk memperkirakan kecepatan algoritma dalam menyelesaikan masalah. Dokumen tersebut menjelaskan beberapa konsep dasar seperti menghitung jumlah 'instruksi' algoritma, contoh algoritma seperti selection sort dan rekursi, serta membandingkan orde kompleksitas seperti O(n) dan O(n^2). Diakhir diberikan panduan perkiraan batas wak
Dokumen tersebut membahas analisis kompleksitas algoritma. Analisis kompleksitas berguna untuk memperkirakan kecepatan algoritma dalam menyelesaikan masalah. Dokumen tersebut menjelaskan beberapa konsep dasar seperti menghitung jumlah 'instruksi' algoritma, contoh algoritma seperti selection sort dan rekursi, serta membandingkan orde kompleksitas seperti O(n) dan O(n^2). Diakhir diberikan panduan perkiraan batas wak
Jonathan Christopher Why analyze complexity of algorithms?
Untuk memperkirakan apakah suatu algoritma
cukup cepat untuk menyelesaikan soal dalam batas waktu tertentu ➜ Jangan mulai mengetik kode kalau belum yakin pendekatan yang akan digunakan sudah benar dan tidak akan melebihi time limit Inti dari complexity analysis:
menghitung jumlah 'instruksi',
tapi hanya melihat kecenderungannya saja Selection sort
for (int i = 0; i < length-1; i++) {
int min = arr[i]; for (int j = i+1; j < length; j++) { If (arr[j] < min) min = arr[j]; } int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } Recursion
// Menghitung jumlah 1+2+...+n
int jumlah(int n) { if (n <= 0) return 0; else return jumlah(n-1) + n; } O(n) vs O(n^2) O(n) vs O(sqrt(n)) vs O(log n) Memperkirakan time limit
➜ Tergantung spek grader dan faktor-faktor konstan
➜ Asumsi: 10 000 000 perulangan per detik
➜ O(n^2): 5000 n ➜ O(n log n): 100 000 n ➜ O(n): 10 000 000 n ➜ O(sqrt(n)): 10^12 n ➜ O(log n): +++ n Referensi