
Kinerja algoritma ini bisa tidak begitu baik jika inputnya tersusun secara acak.
Sebagai contoh, suatu algoritma sorting bisa memberikan kinerja sangat baik jika bilangan-bilangan inputnya sudah setengah tersortir. Input worst-case untuk algoritma adalah input di mana algoritma melakukan operasi dasar paling banyak. Analisis algortima sering cenderung dilakukan dengan pendekatan pesimistis. Kinerja algoritma bergantung pada jumlah operasi dasar yang dilakukannya. Analisis yang sesuai akan memungkan pengambilan keputusan mengenai paradigma yang paling sesuai untuk merancang algoritma.Īnalisis Algoritma Definisi: Operasi Dasar:. Ada beberapa paradigma pemrograman yang berguna dalam computer science, yang sesuai untuk menyelesaikan masalah, misalnya: divide and conquer, backtracking, greedy programming, dynamic programming. Kerangka pikir ini akan memungkinkan pengambilan keputusan mengenai kesesuaian satu algoritma dibandingkan yang lainnya. Akan terlihat bahwa rincian implementasi dan kecepatan hardware seringkali tidak relevan. Khususnya, harus dapat diprediksi bagaimana algoritma dalam skala, misalnya: jika ada sebuah algoritma sorting, harus dapat diprediksi bagaimana kinerja algoritma tersebut jika diberi 10, 1 item. Kerangka pikir yang dipakai harus bisa digunakan untuk memprediksi algoritma.
(Untuk algoritma sorting – apakah yang disortir nerupakan bilangan atau kata?) Independen terhadap tipe input algoritma.Independen terhadap hardware tempat algoritma tersebut berjalan.Ini berarti bahwa metode analisis yang digunakan harus.Cara seperti ini tidak akan memberikan gambaran jika algoritma yang sama ditulis dalam C++ dan berjalan di superkomputer. Tidaklah cukup jika hanya mengimplementasikan semua algoritma yang akan dibandingkan dalam Java, menjalankannya di PC, dan menggunakan stopwatch untuk mencatat waktunya.Diperlukan suatu cara untuk membandingkan kinerja berbagai algoritma yang dapat diterapkan pada semua platform.Tujuan bagian ini adalah untuk memberikan kerangka pikir dalam menganalisis algoritma.