Bidang yang erat terkait dalam ilmu komputer teoritis adalah analisis algoritma dan teori komputasi. Perbedaan kunci antara analisis algoritma dan teori komputasi kompleksitas adalah bahwa mantan dikhususkan untuk menganalisis jumlah sumber daya yang dibutuhkan oleh algoritma tertentu untuk memecahkan masalah, sedangkan yang terakhir mengajukan pertanyaan yang lebih umum tentang semua kemungkinan algoritma yang dapat digunakan untuk memecahkan masalah yang sama. Lebih tepatnya, ia mencoba menggolongkan masalah yang dapat atau tidak dapat diselesaikan dengan sumber daya yang terbatas. Selanjutnya, pembatasan yang memaksakan pada sumber daya yang tersedia adalah apa yang membedakan kompleksitas komputasi dari teori komputasi: teori yang belakangan bertanya masalah macam apa yang dapat, pada prinsipnya, diselesaikan secara algoritma.
Bidang ilmu komputer mana yang menganalisis semua kemungkinan algoritma dalam kumpulan untuk menentukan kebutuhan sumber daya yang diperlukan untuk memecahkan masalah yang diberikan?
teori komputasi kompleksitas teori komputasi kompleksitas teori komputasi kompleksitas