算法是壹系列解決問題的明確指令,即對於某壹標準輸入,能在有限的時間內獲得所需的輸出。如果壹個算法有缺陷或者不適合某個問題,執行這個算法並不能解決問題。
不同的算法可能使用不同的時間、空間或效率來完成相同的任務。壹個算法的優劣可以用空間復雜度和時間復雜度來衡量。算法工程師就是用算法處理事情的人。