Một bài toán có thể được biểu diễn bởi nhiều thuật toán, việc chọn lựa thuật toán thích hợp sẽ giúp cho quá trình viết chương trình đơn giản hơn và máy tính thực hiện với thời gian nhanh hơn. Vì vậy, có ba tiêu chuẩn cơ bản lựa chọn thuật toán đó là:
- Thuật toán có độ phức tạp thời gian nhỏ nhất (thực hiện chương trình trong thời gian ngắn nhất);
- Số lượng ô nhớ sử dụng ít nhất;
- Viết chương trình cho thuật toán dễ hiểu, đơn giản nhất.
- Khi thiết kế hoặc lựa chọn thuật toán người ta thường quan tâm đến các tài nguyên như thời gian thực hiện, số lượng ô nhớ,… Trong các loại tài nguyên người ta quan tâm nhiều nhất đến thời gian vì đó là dạng tài nguyên không tái tạo được.
- Một tiêu chí khác được rất nhiều người quan tâm là cần thiết kế hoặc lựa chọn thuật toán sao cho việc viết phương trình cho thuật toán đó ít phức tạp.
- Khi thiết kế hoặc lựa chọn thuật toán để giải một bài toán cụ thể cần căn cứ vào lượng tài nguyên mà thuật toán đòi hỏi và lượng tài nguyên thực tế cho phép.