Algoritme
"Algoritme terhadap fungsi yang dapat dihitung oleh algoritme": Untuk sebuah fungsi bisa ada beberapa algoritme.
Hal ini benar, bahkan tanpa mengembangkan kumpulan instruksi yang ada bagi programmer.
Rogers mengamati bahwa "Sangat ... penting untuk membedakan antara pengertian "algoritme", misalnya prosedur dan pernyataan "fungsi yang dihitung oleh algoritme", misalnya pemetaan hasil dari prosedur.
Fungsi yang sama bisa memiliki beberapa algoritme berbeda".
Sayangnya ada pertukaran antara kebaikan (kecepatan) dan elegan (kepadatan) -- sebuah program yang elegan bisa melakukan lebih banyak langkah untuk menyelesaikan sebuah komputasi daripada yang kurang elegan.
Sebuah contoh yang menggunakan algoritme Euclid bisa dilihat di bawah.
Algoritme
Sangat penting untuk mengetahui berapa banyak sumber tertentu (seperti waktu dan tempat penyimpanan) secara teoretis diperlukan untuk sebuah algoritme.
Metode-metode telah dikembangkan untuk analisis algoritme untuk mendapatkan jawaban kuantitatif (estimasi);
sebagai contohnya, algoritme pengurutan di atas memerlukan waktu O("n"), menggunakan notasi O besar dengan "n" sebagai panjang deret (yang akan diurut).
Setiap saat algoritme hanya perlu mengingat dua nilai: nilai terbesar yang ditemukan, dan posisinya sekarang dideretan input.
Oleh karena itu dikatakan memiliki kebutuhan ruang "O(1)", jika ruang yang dibutuhkan untuk menyimpan angka masukan tidak dihitung, atau O("n") jika dihitung.