In general, greedy algorithms have five components: A candidate set, from which a solution is created A selection function, which chooses the best candidate to be added to the solution A feasibility function, that is used to determine if a candidate can be used to contribute to a solution An objective function, which assigns a value to a solution, or a partial solution, and A solution function, which will indicate when we have discovered a complete solution Greedy algorithms produce good solutions on some mathematical problems, but not on others.
În general, algoritmii greedy au cinci componente: O mulțime de candidați, din care se creează o soluție Funcția de selecție, care alege cel mai bun candidat pentru a fi adăugat la soluție O funcție de fezabilitate, care este folosită pentru a determina dacă un candidat poate fi utilizat pentru a contribui la o soluție O funcție obiectiv, care atribuie o valoare unei soluții sau unei soluții parțiale, și O funcție de soluție, care va indica atunci când s-a descoperit o soluție completă Algoritmii greedy produce soluții bune la unele probleme de matematică⁠(d), dar nu la altele.