Kinds of alogrithm implementation