Di bawah, asumsikan kita sedang bekerja dengan mesin Turing pita tak terbatas.
Ketika menjelaskan gagasan kompleksitas waktu kepada seseorang, dan mengapa itu diukur relatif terhadap ukuran input sebuah instance, saya menemukan klaim berikut:
[..] Misalnya, wajar bahwa Anda akan memerlukan langkah lebih banyak untuk mengalikan dua bilangan bulat dengan 100000 bit, daripada, katakanlah mengalikan dua bilangan bulat dengan 3 bit.
Klaim itu meyakinkan, tapi entah bagaimana melambaikan tangan. Dalam semua algoritma yang saya temui, semakin besar ukuran input, semakin banyak langkah yang Anda butuhkan. Dengan kata yang lebih tepat, kompleksitas waktu adalah fungsi ukuran input yang meningkat secara monoton .
Apakah ini masalahnya bahwa kompleksitas waktu selalu merupakan fungsi yang meningkat dalam ukuran input? Jika demikian, mengapa demikian? Apakah ada bukti untuk itu selain melambaikan tangan?
Jawaban:
Jika Anda mengartikan kompleksitas masalah , jawabannya tetap tidak. Kompleksitas pengujian awal jauh lebih kecil untuk angka genap daripada angka ganjil.
sumber
Algoritma mungkin sublinear yang menarik bagi Anda, yang tidak membaca seluruh input. Lihat misalnya http://www.dcs.warwick.ac.uk/~czumaj/PUBLICATIONS/DRAFTS/Sublinear-time-Survey-BEATCS.pdf .
sumber
Yang mengatakan, rata-rata runtimes dapat berisi komponen berosilasi, misalnya Mergesort .
sumber