Para hacer un algoritmo hay que tener en cuenta sus características: secuenciales, se procesan uno después del otro; precisos, deben ser objetivos al resolver el problema; ordenados, deben ser leídos y ejecutados de forma precisa; finitos, deben tener un número determinado de pasos; concretos, deben mostrar un resultado al problema resuelto; y definidos, ante los mismos inputs siempre deben obtenerse los mismos outputs.
En resumen, un algoritmo debe ser suficiente para resolver el problema y ante varios algoritmos que resuelvan el mismo problema, siempre será preferible el que tenga un camino más corto.