Algoritma adalah prosedur atau formula untuk memecahkan masalah. Kata ini pertama kali dikenalkan oleh matematikawan Mohammed ibn-Musa al-Khawarizmi, yang hidup sekitar 780-850 di Baghdad.
Sebuah program komputer dapat dilihat sebagai algoritma yang rumit. Dalam matematika dan ilmu komputer algoritma adalah langkah demi langkah yang dirancang untuk melakukan suatu operasi, dan (seperti peta atau flowchart) akan memberikan hasil yang dicari jika diikuti dengan benar. Algoritma memiliki awal dan akhir yang pasti, dan jumlah langkah terbatas. Sebuah algoritma menghasilkan output informasi yang sama dari informasi input yang sama, dan beberapa algoritma pendek dapat dikombinasikan untuk melakukan tugas kompleks seperti pada program komputer. Resep masakan, diagnosis penyakit, pemecahan masalah rutin, adalah beberapa contoh umum dari algoritma sederhana. Namun, algoritma yang cocok untuk memecahkan masalah yang terstruktur (bisa menerima analisis sekuensial), tidak cocok untuk masalah di mana pertimbangan nilai diperlukan.