■ Dobry algorytm powinien cechować się:
■ Poprawność — powinien zwracać prawidłowe wyniki dla każdego zestawu poprawnych danych wejściowych.
■ Skończoność — rozwiązanie zadania musi być możliwe dla dowolnego zestawu danych w skończonej liczbie kroków.
■ Jednoznaczność — powinien zwracać te same wyniki dla zestawu tych samych danych wejściowych.
■ Sprawność — szybkość działania oraz zużycie zasobów komputera.